[*] Binary protection state of mod_ssl.so
Full RELRO Canary found NX enabled DSO No RPATH No RUNPATH No Symbols
[*] Function sprintf tear down of mod_ssl.so
; assembly | /* r2dec pseudo code output */
| /* /logs/firmware/patool_extraction/rootfs.img_unblob_extracted/rootfs.img_extract/0-80367616.squashfs_v4_le_extract/usr/lib/apache2/modules/mod_ssl.so @ 0xf28c */
| #include <stdint.h>
|
| #define BIT_MASK(t,v) ((t)(-((v)!= 0)))&(((t)-1)>>((sizeof(t)*CHAR_BIT)-(v)))
|
; (fcn) fcn.0000f28c () | void fcn_0000f28c (int16_t arg_0h, int16_t arg_4h, int16_t arg_8h, int16_t arg_10h, int16_t arg1) {
| int16_t var_0h;
| int16_t var_4h;
| int16_t var_8h;
| int16_t var_ch;
| int16_t var_10h;
| int16_t var_14h;
| int16_t var_40h;
| int16_t var_44h_2;
| int16_t var_8h_2;
| int16_t var_ch_2;
| int16_t var_14h_2;
| int16_t var_18h_2;
| int16_t var_1ch;
| int16_t var_20h;
| int16_t var_24h;
| int16_t var_28h;
| int16_t var_2ch;
| int16_t var_30h;
| int16_t var_34h;
| int16_t var_3ch;
| int16_t var_40h_2;
| int16_t var_44h;
| int16_t var_0h_2;
| int16_t var_4h_2;
| int16_t var_8h_3;
| int16_t var_ch_3;
| int16_t var_10h_2;
| int16_t var_18h;
| int16_t var_1ch_2;
| int16_t var_20h_2;
| int16_t var_24h_2;
| int16_t var_28h_2;
| int16_t var_2ch_2;
| int16_t var_30h_2;
| int16_t var_34h_2;
| int16_t var_3ch_2;
| int16_t var_40h_3;
| int16_t var_44h_3;
| int16_t var_48h;
| int16_t var_4ch;
| r0 = arg1;
| label_107:
0x00007210 invalid | void (*0x7214)() ();
| label_91:
0x0000e214 ldr.w ip, [pc, 0x154] |
0x0000e218 push.w {r4, r5, r6, r7, r8, lr} |
0x0000e21c mov r6, r3 | r6 = r3;
0x0000e21e ldr r3, [pc, 0x150] | r3 = *(0xe372);
0x0000e220 mov r4, r0 | r4 = r0;
0x0000e222 add ip, pc | ip = 0x1c592;
0x0000e224 mov r0, r2 | r0 = r2;
0x0000e226 ldr r7, [r4, 8] | r7 = *((r4 + 8));
0x0000e228 mov r2, ip | r2 = ip;
0x0000e22a ldr.w r3, [ip, r3] | r3 = *(0x1c592);
0x0000e22e movw ip, 0xd4c0 |
0x0000e232 mov r5, r1 | r5 = r1;
0x0000e234 movt ip, 1 | ip = 0x1d4c0;
0x0000e238 cmp r0, ip |
0x0000e23a sub sp, 0x10 |
0x0000e23c ldr r2, [r3, 8] | r2 = *(0x1c59a);
0x0000e23e ldr r3, [r7, 0x10] | r3 = *((r7 + 0x10));
0x0000e240 ldr r1, [r3, 0x2c] | r1 = *(0x1c5be);
0x0000e242 ldr.w r8, [r1, r2, lsl 2] | r8 = *(0x1c5be);
| if (r0 != ip) {
0x0000e246 beq 0xe27c |
0x0000e248 movw r1, 0xd4c1 |
0x0000e24c movt r1, 1 | r1 = 0x1d4c1;
0x0000e250 cmp r0, r1 |
| if (r0 == r1) {
0x0000e252 bne 0xe276 |
0x0000e254 cmp r2, 0 |
0x0000e256 ldr r1, [r3, 0x60] | r1 = *((r3 + 0x60));
| if (r2 < 0) {
0x0000e258 blt 0xe318 | goto label_114;
| }
0x0000e25a cmp r1, 0 |
| if (r1 == 0) {
0x0000e25c beq 0xe344 | goto label_115;
| }
0x0000e25e ldr r0, [r1] | r0 = *(r1);
0x0000e260 cmp r0, 0 |
| if (r0 == 0) {
0x0000e262 beq 0xe31a | goto label_4;
| }
0x0000e264 ldrsb r0, [r0, r2] | r0 = *((r0 + r2));
0x0000e266 cmp r0, 0 |
| if (r0 < 0) {
0x0000e268 blt 0xe31a | goto label_4;
| }
| label_3:
0x0000e26a cmp r0, 5 |
| if (r0 > 5) {
0x0000e26c bgt 0xe320 | goto label_116;
| }
| label_1:
0x0000e26e movs r2, 1 | r2 = 1;
0x0000e270 str r2, [r3, 0x54] | *((r3 + 0x54)) = r2;
| label_2:
0x0000e272 movw r0, 0x4e2e | r0 = 0x4e2e;
| }
0x0000e276 add sp, 0x10 |
0x0000e278 pop.w {r4, r5, r6, r7, r8, pc} |
| }
0x0000e27c cmp r2, 0 |
0x0000e27e ldr r1, [r3, 0x60] | r1 = *((r3 + 0x60));
| if (r2 < 0) {
0x0000e280 blt 0xe2f2 | goto label_117;
| }
0x0000e282 cmp r1, 0 |
| if (r1 == 0) {
0x0000e284 beq 0xe354 | goto label_118;
| }
0x0000e286 ldr r0, [r1] | r0 = *(r1);
0x0000e288 cmp r0, 0 |
| if (r0 == 0) {
0x0000e28a beq 0xe2f6 | goto label_6;
| }
0x0000e28c ldrsb r0, [r0, r2] | r0 = *((r0 + r2));
0x0000e28e cmp r0, 0 |
| if (r0 < 0) {
0x0000e290 blt 0xe2f6 | goto label_6;
| }
| label_5:
0x0000e292 cmp r0, 5 |
| if (r0 > 5) {
0x0000e294 bgt 0xe2fc | goto label_119;
| }
| do {
| label_0:
0x0000e296 ldr r0, [pc, 0xdc] |
0x0000e298 movs r2, 6 | r2 = 6;
0x0000e29a ldr.w r3, [r8, 0x28] | r3 = *((r8 + 0x28));
0x0000e29e movw r1, 0x3f6 | r1 = 0x3f6;
0x0000e2a2 add r0, pc | r0 = 0x1c61c;
0x0000e2a4 bl 0x14f78 | fcn_00014f78 (r0, r1, r2, r3, r4);
0x0000e2a8 ldr r0, [r4] | r0 = *(r4);
0x0000e2aa blx 0x7d88 | DH_bits ();
0x0000e2ae add.w r3, r4, 0x2000 | r3 = r4 + 0x2000;
0x0000e2b2 ldr r2, [r7, 0x10] | r2 = *((r7 + 0x10));
0x0000e2b4 ldr r1, [r3, 0x28] | r1 = *((r3 + 0x28));
0x0000e2b6 movs r3, 0 | r3 = 0;
0x0000e2b8 str.w r3, [r8] | __asm ("str.w r3, [r8]");
0x0000e2bc str r3, [r4] | *(r4) = r3;
0x0000e2be str r3, [r1] | *(r1) = r3;
0x0000e2c0 movs r3, 1 | r3 = 1;
0x0000e2c2 str r3, [r2, 0x58] | *((r2 + 0x58)) = r3;
0x0000e2c4 cmp r6, 0 |
| if (r6 != 0) {
0x0000e2c6 bne 0xe33e | goto label_120;
| }
0x0000e2c8 ldr r0, [pc, 0xac] |
0x0000e2ca movs r3, 2 | r3 = 2;
0x0000e2cc ldr r2, [r2, 0x40] | r2 = *((r2 + 0x40));
0x0000e2ce movs r1, 0x10 | r1 = 0x10;
0x0000e2d0 str.w r3, [r8, 0x20] | __asm ("str.w r3, [r8, 0x20]");
0x0000e2d4 add r0, pc | r0 = 0x1c650;
0x0000e2d6 blx 0x7558 | fcn_00007558 ();
0x0000e2da adds r2, r5, 4 | r2 = r5 + 4;
0x0000e2dc mov r3, r0 | r3 = r0;
0x0000e2de str r2, [r0] | *(r0) = r2;
0x0000e2e0 mov r0, r6 | r0 = r6;
0x0000e2e2 ldr r2, [r5, 8] | r2 = *((r5 + 8));
0x0000e2e4 str r2, [r3, 4] | *((r3 + 4)) = r2;
0x0000e2e6 ldr r2, [r5, 8] | r2 = *((r5 + 8));
0x0000e2e8 str r3, [r2] | *(r2) = r3;
0x0000e2ea str r3, [r5, 8] | *((r5 + 8)) = r3;
0x0000e2ec add sp, 0x10 |
0x0000e2ee pop.w {r4, r5, r6, r7, r8, pc} |
| label_117:
0x0000e2f2 cmp r1, 0 |
| if (r1 == 0) {
0x0000e2f4 beq 0xe368 | goto label_121;
| }
| label_6:
0x0000e2f6 ldr r1, [r1, 4] | r1 = *((r1 + 4));
0x0000e2f8 cmp r1, 5 |
0x0000e2fa ble 0xe296 |
| } while (r1 <= 5);
| label_119:
0x0000e2fc str r3, [sp, 4] | var_4h = r3;
0x0000e2fe movw r1, 0x3f3 | r1 = 0x3f3;
0x0000e302 ldr r3, [pc, 0x78] |
0x0000e304 ldr r0, [pc, 0x78] |
0x0000e306 add r3, pc | r3 = 0x1c688;
0x0000e308 str r3, [sp, 8] | var_8h = r3;
0x0000e30a movs r3, 0 | r3 = 0;
0x0000e30c str r3, [sp] | *(sp) = r3;
0x0000e30e add r0, pc | r0 = 0x1c692;
0x0000e310 movs r3, 6 | r3 = 6;
0x0000e312 blx 0x7380 | BIO_set_init ();
0x0000e316 b 0xe296 | goto label_0;
| if (r1 == 0) {
| label_114:
0x0000e318 cbz r1, 0xe364 | goto label_122;
| }
| label_4:
0x0000e31a ldr r1, [r1, 4] | r1 = *((r1 + 4));
0x0000e31c cmp r1, 5 |
| if (r1 <= 5) {
0x0000e31e ble 0xe26e | goto label_1;
| }
| label_116:
0x0000e320 ldr r0, [pc, 0x60] |
0x0000e322 movs r1, 0 | r1 = 0;
0x0000e324 strd r1, r3, [sp] | __asm ("strd r1, r3, [sp]");
0x0000e328 movs r3, 6 | r3 = 6;
0x0000e32a movw r1, 0x406 | r1 = 0x406;
0x0000e32e add r0, pc | r0 = 0x1c6b6;
0x0000e330 str r0, [sp, 8] | var_8h = r0;
0x0000e332 ldr r0, [pc, 0x54] |
0x0000e334 add r0, pc | r0 = 0x1c6c2;
0x0000e336 blx 0x7380 | BIO_set_init ();
0x0000e338 invalid |
0x0000e33c b 0xe26e | goto label_1;
| label_120:
0x0000e33e str.w r3, [r8, 0x20] | __asm ("str.w r3, [r8, 0x20]");
0x0000e342 b 0xe272 | goto label_2;
| label_115:
0x0000e344 ldr r1, [r3, 4] | r1 = *((r3 + 4));
0x0000e346 ldr r0, [r1, 0x10] | r0 = *((r1 + 0x10));
| if (r0 == 0) {
0x0000e348 cbz r0, 0xe350 | goto label_7;
| }
0x0000e34a ldrsb r0, [r0, r2] | r0 = *((r0 + r2));
0x0000e34c cmp r0, 0 |
| if (r0 >= 0) {
0x0000e34e bge 0xe26a | goto label_3;
| }
| label_7:
0x0000e350 adds r1, 0x10 | r1 += 0x10;
0x0000e352 b 0xe31a | goto label_4;
| label_118:
0x0000e354 ldr r1, [r3, 4] | r1 = *((r3 + 4));
0x0000e356 ldr r0, [r1, 0x10] | r0 = *((r1 + 0x10));
| if (r0 == 0) {
0x0000e358 cbz r0, 0xe360 | goto label_123;
| }
0x0000e35a ldrsb r0, [r0, r2] | r0 = *((r0 + r2));
0x0000e35c cmp r0, 0 |
| if (r0 >= 0) {
0x0000e35e bge 0xe292 | goto label_5;
| }
| do {
| label_123:
0x0000e360 adds r1, 0x10 | r1 += 0x10;
0x0000e362 b 0xe2f6 | goto label_6;
| label_122:
0x0000e364 ldr r1, [r3, 4] | r1 = *((r3 + 4));
0x0000e366 b 0xe350 | goto label_7;
| label_121:
0x0000e368 ldr r1, [r3, 4] | r1 = *((r3 + 4));
0x0000e36a b 0xe360 |
| } while (1);
0x0000f28c ldr.w r2, [pc, 0xb4c] |
0x0000f290 movs r1, 0 | r1 = 0;
0x0000f292 ldr.w r3, [pc, 0xb4c] | r3 = *(0xfde2);
0x0000f296 push.w {r4, r5, r6, r7, r8, sb, sl, fp, lr} |
0x0000f29a mov r7, r0 | r7 = r0;
0x0000f29c add r2, pc | r2 = 0x1f07c;
0x0000f29e sub sp, 0x54 |
0x0000f2a0 ldr r3, [r2, r3] |
0x0000f2a2 ldr.w r4, [pc, 0xb40] |
0x0000f2a6 ldr r0, [r0] | r0 = *(r0);
0x0000f2a8 ldr r3, [r3] | r3 = *(0x1f07c);
0x0000f2aa str r3, [sp, 0x4c] | var_4ch = r3;
0x0000f2ac mov.w r3, 0 | r3 = 0;
0x0000f2b0 blx 0x7830 | SSL_CTX_check_private_key ();
0x0000f2b4 ldr.w r2, [pc, 0xb30] | r2 = *(0xfde8);
0x0000f2b8 add r4, pc | r4 = 0x1f0a2;
0x0000f2ba mov r3, r4 | r3 = r4;
0x0000f2bc mov r6, r0 | r6 = r0;
0x0000f2be ldr r3, [r4, r2] | r3 = *(0x1f0a2);
0x0000f2c0 mov r2, r3 | r2 = r3;
0x0000f2c2 str r3, [sp, 0x18] | var_18h = r3;
0x0000f2c4 ldr r2, [r2, 8] | r2 = *((r2 + 8));
0x0000f2c6 ldr r3, [r0, 0x2c] | r3 = *((r0 + 0x2c));
0x0000f2c8 ldr r0, [r7] | r0 = *(r7);
0x0000f2ca invalid |
0x0000f2ce ldm r2!, {r0, r5} | r0 = *(r2!);
| r5 = *((r2! + 4));
0x0000f2d0 invalid |
| if (r1 != 0) {
0x0000f2d4 bne.w 0xf73c | goto label_32;
| }
0x0000f2d8 ldr r3, [r6, 0x70] | r3 = *((r6 + 0x70));
0x0000f2da ldr r2, [r4, 0x28] | r2 = *((r4 + 0x28));
0x0000f2dc str r2, [sp, 0x24] | var_24h_2 = r2;
0x0000f2de cmp r3, 0 |
| if (r3 == 0) {
0x0000f2e0 beq 0xf3cc | goto label_124;
| }
0x0000f2e2 ldr.w r1, [pc, 0xb08] |
0x0000f2e6 mov r8, r0 | r8 = r0;
0x0000f2e8 ldr r0, [r6, 0x30] | r0 = *((r6 + 0x30));
0x0000f2ea add r1, pc | r1 = 0x1f0dc;
0x0000f2ec blx 0x7180 | fcn_00007180 ();
0x0000f2f0 ldr.w r1, [pc, 0xafc] |
0x0000f2f4 str r0, [sp, 0x28] | var_28h_2 = r0;
0x0000f2f6 ldr r0, [r6, 0x30] | r0 = *((r6 + 0x30));
0x0000f2f8 add r1, pc | r1 = 0x1f0ec;
0x0000f2fa ldr r5, [r4, 0x2c] | r5 = *((r4 + 0x2c));
0x0000f2fc blx 0x7180 | r0 = fcn_00007180 ();
0x0000f300 mov r4, r0 | r4 = r0;
0x0000f302 str r0, [sp, 0x2c] | var_2ch_2 = r0;
0x0000f304 cmp r0, 0 |
| if (r0 == 0) {
0x0000f306 beq.w 0xf49a | goto label_125;
| }
0x0000f30a movs r2, 4 | r2 = 4;
0x0000f30c movs r1, 3 | r1 = 3;
0x0000f30e ldr r0, [r6] | r0 = *(r6);
0x0000f310 mov sb, r4 | sb = r4;
0x0000f312 blx 0x70c0 | r0 = fcn_000070c0 ();
0x0000f316 mov fp, r0 |
0x0000f318 mov r0, r4 | r0 = r4;
0x0000f31a blx 0x78a0 | r0 = fcn_000078a0 ();
0x0000f31e adds r1, r0, 1 | r1 = r0 + 1;
0x0000f320 ldr r0, [r6] | r0 = *(r6);
0x0000f322 blx 0x722c | r0 = fcn_0000722c ();
0x0000f326 mov r4, r0 | r4 = r0;
0x0000f328 mov r0, sb | r0 = sb;
0x0000f32a blx 0x78a0 | fcn_000078a0 ();
0x0000f32e mov r1, r8 | r1 = r8;
0x0000f330 adds r2, r0, 1 | r2 = r0 + 1;
0x0000f332 mov r0, r4 | r0 = r4;
0x0000f334 blx 0x6e98 | fcn_00006e98 ();
0x0000f338 mov r1, sb | r1 = sb;
0x0000f33a str r0, [sp, 0x30] | var_30h_2 = r0;
0x0000f33c mov r4, r0 | r4 = r0;
0x0000f33e ldr r0, [r6] | r0 = *(r6);
0x0000f340 blx 0x72fc | X509_get_serialNumber ();
0x0000f342 invalid |
0x0000f346 subs r2, 0xac | r2 -= 0xac;
0x0000f348 mov sb, r8 | sb = r8;
0x0000f34a strd r5, r8, [sp, 0x34] | __asm ("strd r5, r8, [sp, 0x34]");
0x0000f34e str r7, [sp, 0x3c] | var_3ch_2 = r7;
0x0000f350 add r3, pc | r3 += pc;
0x0000f352 str r3, [sp, 0x1c] | var_1ch_2 = r3;
0x0000f354 ldr.w r3, [pc, 0xaa0] |
0x0000f358 add r3, pc | r3 = 0x1f154;
0x0000f35a str r3, [sp, 0x20] | var_20h_2 = r3;
0x0000f35c add r3, sp, 0x48 | r3 += var_48h;
0x0000f35e mov r8, r3 | r8 = r3;
| label_8:
0x0000f360 ldr r1, [sp, 0x1c] | r1 = var_1ch_2;
0x0000f362 mov r2, r8 | r2 = r8;
0x0000f364 blx 0x7ae0 | r0 = fcn_00007ae0 ();
0x0000f368 mov r7, r0 | r7 = r0;
0x0000f36a cmp r0, 0 |
| if (r0 == 0) {
0x0000f36c beq.w 0xf7a2 | goto label_126;
| }
0x0000f36e strh r1, [r3, 0x10] | *((r3 + 0x10)) = r1;
0x0000f370 ldr r2, [sp, 0x48] | r2 = var_48h;
0x0000f372 ldrb r1, [r2] | r1 = *(r2);
0x0000f374 subs r2, r2, r7 | r2 -= r7;
0x0000f376 cmp r1, 0 |
0x0000f378 ite eq |
| if (r1 != 0) {
0x0000f37a moveq r5, r2 | r5 = r2;
| }
| if (r1 == 0) {
0x0000f37c subne r5, r2, 1 | r5 = r2 - 1;
| }
0x0000f37e cmp r5, 0xff |
| if (r5 > 0xff) {
0x0000f380 bhi.w 0xf830 | goto label_127;
| }
0x0000f384 mov r2, r5 | r2 = r5;
0x0000f386 mov r1, r7 | r1 = r7;
0x0000f388 ldr r0, [r6] | r0 = *(r6);
0x0000f38a blx 0x7594 | r0 = fcn_00007594 ();
0x0000f38e mov sl, r0 | sl = r0;
0x0000f390 mov r0, fp | r0 = fp;
0x0000f392 blx 0x7730 | fcn_00007730 ();
0x0000f396 mov r1, sl | r1 = sl;
0x0000f398 str.w sl, [r0] | __asm ("str.w sl, [r0]");
0x0000f39c ldr r0, [sp, 0x20] | r0 = var_20h_2;
0x0000f39e blx 0x7abc | fcn_00007abc ();
0x0000f3a2 mov ip, r4 |
0x0000f3a4 cmp r0, 0 |
0x0000f3a6 it eq |
| if (r0 != 0) {
0x0000f3a8 moveq sb, 1 | sb = 1;
| }
0x0000f3ac strb r5, [ip], 1 | *(ip) = r5;
| ip++;
0x0000f3b0 cmp r5, 0 |
| if (r5 == 0) {
0x0000f3b2 beq.w 0xf664 | goto label_128;
| }
0x0000f3b6 adds r0, r7, r5 | r0 = r7 + r5;
| do {
0x0000f3b8 ldrb r3, [r7], 1 | r3 = *(r7);
| r7++;
0x0000f3bc cmp r7, r0 |
0x0000f3be strb r3, [r4, 1]! | *((r4 += 1)) = r3;
0x0000f3c2 bne 0xf3b8 |
| } while (r7 != r0);
0x0000f3c4 add.w r4, ip, r5 | r4 = ip + r5;
| label_11:
0x0000f3c8 movs r0, 0 | r0 = 0;
0x0000f3ca b 0xf360 | goto label_8;
| label_124:
0x0000f3cc blx 0x680c | fcn_0000680c ();
0x0000f3d0 ldr r0, [r7] | r0 = *(r7);
0x0000f3d2 blx 0x7ca4 | r0 = OPENSSL_sk_push ();
0x0000f3d6 subs.w r8, r0, 0 | r8 = r0 - 0;
| if (r8 <= r0) {
0x0000f3da ble.w 0xf584 | goto label_129;
| }
0x0000f3de ldr r3, [r4, 0x28] | r3 = *((r4 + 0x28));
0x0000f3e0 ldr r2, [sp, 0x18] | r2 = var_18h;
0x0000f3e2 ldr r0, [r7] | r0 = *(r7);
0x0000f3e4 ldr r3, [r3, 0x18] | r3 = *((r3 + 0x18));
0x0000f3e6 ldr r2, [r2, 8] | r2 = *((r2 + 8));
0x0000f3e8 ldr.w r5, [r3, r2, lsl 2] | offset_0 = r2 << 2;
| r5 = *((r3 + offset_0));
0x0000f3ec blx 0x7ab0 | r0 = fcn_00007ab0 ();
0x0000f3f0 cmp r0, 0 |
| if (r0 != 0) {
0x0000f3f2 bne.w 0xf6c4 | goto label_130;
| }
0x0000f3f6 ldr.w ip, [r4, 0x14] | ip = *((r4 + 0x14));
0x0000f3fa cmp.w ip, 0 |
| if (ip == 0) {
0x0000f3fe beq.w 0xf720 | goto label_131;
| }
| label_48:
0x0000f402 ldr r3, [sp, 0x18] | r3 = var_18h;
0x0000f404 ldr r1, [r6, 0x60] | r1 = *((r6 + 0x60));
0x0000f406 ldr r2, [r3, 8] | r2 = *((r3 + 8));
0x0000f408 cmp r2, 0 |
| if (r2 < 0) {
0x0000f40a blt.w 0xf884 | goto label_132;
| }
0x0000f40e cmp r1, 0 |
| if (r1 == 0) {
0x0000f410 beq.w 0xfd5a | goto label_133;
| }
0x0000f414 ldr r3, [r1] | r3 = *(r1);
0x0000f416 cmp r3, 0 |
| if (r3 == 0) {
0x0000f418 beq.w 0xf88a | goto label_47;
| }
0x0000f41c ldrsb r3, [r3, r2] | r3 = *((r3 + r2));
0x0000f41e cmp r3, 0 |
| if (r3 < 0) {
0x0000f420 blt.w 0xf88a | goto label_47;
| }
| label_46:
0x0000f424 cmp r3, 5 |
0x0000f426 ite le |
| if (r3 > 5) {
0x0000f428 movle r3, 0 | r3 = 0;
| }
| if (r3 <= 5) {
0x0000f42a movgt r3, 1 | r3 = 1;
| }
| if (r3 != 0) {
| label_16:
0x0000f42c cbz r3, 0xf458 |
0x0000f42e cmp.w ip, 0 |
| if (ip == 0) {
0x0000f432 beq.w 0xfdba | goto label_134;
| }
| label_49:
0x0000f436 ldr.w r3, [pc, 0x9c4] |
0x0000f43a mov.w r1, 0x5f8 | r1 = 0x5f8;
0x0000f43e ldr.w r0, [pc, 0x9c0] |
0x0000f442 str.w ip, [sp, 0xc] | __asm ("str.w ip, [var_ch_3]");
0x0000f446 add r3, pc | r3 = "/usr/src/debug/apache2/2.4.57-r0/modules/ssl/ssl_engine_init.c";
0x0000f448 strd r6, r3, [sp, 4] | __asm ("strd r6, r3, [sp, 4]");
0x0000f44c movs r3, 0 | r3 = 0;
0x0000f44e str r3, [sp] | *(sp) = r3;
0x0000f450 add r0, pc | r0 = 0x1f256;
0x0000f452 movs r3, 6 | r3 = 6;
0x0000f454 blx 0x7380 | BIO_set_init ();
| }
0x0000f458 ldr.w r0, [pc, 0x9a8] |
0x0000f45c movs r2, 6 | r2 = 6;
0x0000f45e movw r1, 0x5fb | r1 = 0x5fb;
0x0000f462 ldr r3, [sp, 0x24] | r3 = var_24h_2;
0x0000f464 add r0, pc | r0 = 0x1f26c;
0x0000f466 bl 0x14f78 | fcn_00014f78 (r0, r1, r2, r3, r4);
0x0000f46a movs r2, 1 | r2 = 1;
0x0000f46c mov r1, r6 | r1 = r6;
0x0000f46e mov r0, r7 | r0 = r7;
0x0000f470 bl 0xe38c | fcn_0000e38c (r0, r1, r2, r3);
| label_33:
0x0000f474 mov.w r8, 0x67 | r8 = 0x67;
| do {
| label_9:
0x0000f478 ldr.w r2, [pc, 0x98c] |
0x0000f47c ldr.w r3, [pc, 0x960] | r3 = *(0xfde0);
0x0000f480 add r2, pc | r2 = 0x1f28c;
0x0000f482 ldr r3, [r2, r3] | r3 = *(0x1f28c);
0x0000f484 ldr r2, [r3] | r2 = *(0x1f28c);
0x0000f486 ldr r3, [sp, 0x4c] | r3 = var_4ch;
0x0000f488 eors r2, r3 | r2 ^= r3;
0x0000f48a mov.w r3, 0 | r3 = 0;
| if (r2 != r3) {
0x0000f48e bne.w 0xffe2 | goto label_135;
| }
0x0000f492 mov r0, r8 | r0 = r8;
0x0000f494 add sp, 0x54 |
0x0000f496 pop.w {r4, r5, r6, r7, r8, sb, sl, fp, pc} |
| label_125:
0x0000f49a ldr.w fp, [sp, 0x2c] | fp = var_2ch_2;
0x0000f49e mov.w sb, 1 | sb = 1;
| label_13:
0x0000f4a2 ldr r1, [sp, 0x28] | r1 = var_28h_2;
| if (r1 != 0) {
0x0000f4a4 cbz r1, 0xf4b6 |
0x0000f4a6 ldr r3, [r6] | r3 = *(r6);
0x0000f4a8 movs r2, 0 | r2 = 0;
0x0000f4aa add r0, sp, 0x40 | r0 += var_40h_3;
0x0000f4ac blx 0x6ae8 | r0 = fcn_00006ae8 ();
0x0000f4b0 cmp r0, 0 |
| if (r0 != 0) {
0x0000f4b2 bne.w 0xfa60 | goto label_136;
| }
| }
| label_26:
0x0000f4b6 ldr r0, [r7] | r0 = *(r7);
0x0000f4b8 blx 0x7534 | r0 = fcn_00007534 ();
0x0000f4bc cmp r0, 0 |
| if (r0 <= 0) {
0x0000f4be ble.w 0xf742 | goto label_137;
| }
0x0000f4c2 ldr r0, [r7] | r0 = *(r7);
0x0000f4c4 movs r4, 1 | r4 = 1;
0x0000f4c6 blx 0x70a8 | fcn_000070a8 ();
0x0000f4ca ldr r2, [r5, 0x28] | r2 = *((r5 + 0x28));
0x0000f4cc mov sl, r0 | sl = r0;
0x0000f4ce ldr.w r3, [r2, 0xb8] | r3 = *((r2 + 0xb8));
| if (r3 != 0) {
0x0000f4d2 cbz r3, 0xf4fc |
0x0000f4d4 cmp r0, 0 |
| if (r0 == 0) {
0x0000f4d6 beq.w 0xf630 | goto label_138;
| }
0x0000f4da blx 0x68e8 | loc_imp_apr_brigade_destroy ();
0x0000f4de blx 0x7398 | r0 = loc_imp_apr_bucket_transient_create ();
0x0000f4e2 cmp r0, 0 |
| if (r0 >= 0) {
0x0000f4e4 bge.w 0xf630 | goto label_138;
| }
0x0000f4e8 mov r0, sl | r0 = sl;
0x0000f4ea blx 0x7298 | fcn_00007298 ();
0x0000f4ee blx 0x7398 | r0 = loc_imp_apr_bucket_transient_create ();
0x0000f4f2 cmp r0, 0 |
| if (r0 <= 0) {
0x0000f4f4 ble.w 0xf630 | goto label_138;
| }
0x0000f4f8 ldr r2, [r5, 0x28] | r2 = *((r5 + 0x28));
0x0000f4fa movs r4, 1 | r4 = 1;
| }
| label_10:
0x0000f4fc ldrd r2, r3, [r2, 0xb0] | __asm ("ldrd r2, r3, [r2, 0xb0]");
0x0000f500 cmp r3, 0 |
| if (r3 == 0) {
0x0000f502 beq.w 0xf668 | goto label_139;
| }
0x0000f506 sub.w r3, r3, 1 | r3--;
0x0000f50a clz r3, r3 | r3 &= r3;
0x0000f50e lsrs r3, r3, 5 | r3 >>= 5;
0x0000f510 cmp r2, 0 |
0x0000f512 it ne |
| if (r2 == 0) {
0x0000f514 orrne r3, r3, 1 | r3 |= 1;
| }
0x0000f516 lsls r1, r0, 0xc | r1 = r0 << 0xc;
0x0000f518 cmp r3, 0 |
| if (r3 == 0) {
0x0000f51a beq.w 0xf67c | goto label_20;
| }
0x0000f51e ldr r3, [sp, 0x28] | r3 = var_28h_2;
0x0000f520 cmp r3, 0 |
| if (r3 == 0) {
0x0000f522 beq.w 0xf67c | goto label_20;
| }
0x0000f526 cmp.w sl, 0 |
| if (sl == 0) {
0x0000f52a beq.w 0xfc8c | goto label_140;
| }
0x0000f52e ldr r3, [sp, 0x24] | r3 = var_24h_2;
0x0000f530 mov r1, sl | r1 = sl;
0x0000f532 ldr r0, [r6] | r0 = *(r6);
0x0000f534 ldr r2, [sp, 0x28] | r2 = var_28h_2;
0x0000f536 str r3, [sp] | *(sp) = r3;
0x0000f538 movs r3, 1 | r3 = 1;
0x0000f53a bl 0x1b0ec | fcn_0001b0ec (r0, r1, r2, r3, r4);
0x0000f53c ldc2l p8, c2, [r7] | __asm ("ldc2l p8, c2, [r7]");
| if (r3 == 1) {
0x0000f540 beq.w 0xfc8c | goto label_140;
| }
0x0000f544 cmp.w fp, 0 |
| if (fp != 0) {
0x0000f548 bne.w 0xf682 | goto label_141;
| }
0x0000f54c cmp r4, 0 |
| if (r4 == 0) {
0x0000f54e beq.w 0xf698 | goto label_142;
| }
0x0000f550 strh r3, [r4, 4] | *((r4 + 4)) = r3;
| label_12:
0x0000f552 ldr r1, [r7] | r1 = *(r7);
0x0000f554 mov r0, r6 | r0 = r6;
0x0000f556 bl 0xf23c | r0 = fcn_0000f23c (r0, r1);
0x0000f55a mov r4, r0 | r4 = r0;
0x0000f55c cmp.w sl, 0 |
| if (sl != 0) {
0x0000f560 beq 0xf568 |
0x0000f562 mov r0, sl | r0 = sl;
0x0000f564 blx 0x6a5c | SSL_CTX_get_verify_mode ();
| }
0x0000f568 adds r3, r4, 1 | r3 = r4 + 1;
0x0000f56a cmp r3, 1 |
| if (r3 > 1) {
0x0000f56c bhi.w 0xf69e | goto label_143;
| }
0x0000f570 ldr.w r2, [pc, 0x898] |
0x0000f574 ldr.w r1, [pc, 0x898] |
0x0000f578 ldr r0, [r6, 0x30] | r0 = *((r6 + 0x30));
0x0000f57a add r2, pc | r2 = 0x1f38a;
0x0000f57c add r1, pc | r1 = 0x1f390;
0x0000f57e blx 0x7e60 | BIO_meth_set_read ();
0x0000f582 b 0xf478 |
| } while (1);
| label_129:
0x0000f584 ldr r0, [r7, 4] | r0 = *((r7 + 4));
0x0000f586 blx 0x6d20 | r0 = PEM_read_bio_X509 ();
0x0000f58a mov r4, r0 | r4 = r0;
0x0000f58c ldr r0, [r7, 8] | r0 = *((r7 + 8));
0x0000f58e blx 0x6d20 | PEM_read_bio_X509 ();
0x0000f592 ldr r5, [r4, 0xc] | r5 = *((r4 + 0xc));
0x0000f594 mov sb, r0 | sb = r0;
| if (r5 == 0) {
0x0000f596 cbnz r5, 0xf59a |
0x0000f598 ldr r5, [r0, 0xc] | r5 = *((r0 + 0xc));
| }
0x0000f59a mov r1, r8 | r1 = r8;
0x0000f59c ldr r0, [r7] | r0 = *(r7);
0x0000f59e blx 0x6d5c | r0 = loc_imp_apr_psprintf ()
0x0000f5a2 cmp r0, 6 |
0x0000f5a4 mov r8, r0 | r8 = r0;
| if (r0 == 6) {
0x0000f5a6 beq.w 0xfb88 | goto label_144;
| }
0x0000f5aa cmp r0, 2 |
0x0000f5ac ittt eq |
| if (r0 != 2) {
0x0000f5ae moveq r3, 0xb | r3 = 0xb;
| }
| if (r0 != 2) {
0x0000f5b0 moveq r8, r3 | r8 = r3;
| }
| if (r0 == 2) {
0x0000f5b2 streq r3, [sb, 0xc] | *((sb + 0xc)) = r3;
| goto label_145;
| }
| if (r0 == 2) {
| label_145:
0x0000f5b6 beq.w 0xf478 | goto label_9;
| }
0x0000f5ba blx 0x73d4 | r0 = PEM_X509_INFO_read_bio ();
0x0000f5be lsrs r3, r0, 0x18 | r3 = r0 >> 0x18;
0x0000f5c0 cmp r3, 0x14 |
| if (r3 == 0x14) {
0x0000f5c2 beq.w 0xfc1c | goto label_146;
| }
0x0000f5c4 strh r3, [r5, 0x18] | *((r5 + 0x18)) = r3;
| label_37:
0x0000f5c6 ldr r3, [sp, 0x18] | r3 = var_18h;
0x0000f5c8 cmp.w r8, 5 |
0x0000f5cc ldr r1, [r6, 0x60] | r1 = *((r6 + 0x60));
0x0000f5ce ldr.w sb, [r3, 8] | sb = *((r3 + 8));
| if (r8 == 5) {
0x0000f5d2 beq.w 0xfbd2 | goto label_147;
| }
0x0000f5d6 cmp.w sb, 0 |
| if (sb < 0) {
0x0000f5da blt.w 0xf97e | goto label_148;
| }
0x0000f5de cmp r1, 0 |
| if (r1 == 0) {
0x0000f5e0 beq.w 0xfeb0 | goto label_149;
| }
0x0000f5e4 ldr r3, [r1] | r3 = *(r1);
0x0000f5e6 cmp r3, 0 |
| if (r3 == 0) {
0x0000f5e8 beq.w 0xf984 | goto label_54;
| }
0x0000f5ec ldrsb.w r3, [r3, sb] | r3 = *((r3 + sb));
0x0000f5f0 cmp r3, 0 |
| if (r3 < 0) {
0x0000f5f2 blt.w 0xf984 | goto label_54;
| }
| label_53:
0x0000f5f6 cmp r3, 5 |
0x0000f5f8 ite le |
| if (r3 > 5) {
0x0000f5fa movle r3, 0 | r3 = 0;
| }
| if (r3 <= 5) {
0x0000f5fc movgt r3, 1 | r3 = 1;
| }
| label_19:
0x0000f5fe cmp r3, 0 |
| if (r3 != 0) {
0x0000f600 bne.w 0xfd32 | goto label_150;
| }
| label_45:
0x0000f604 ldr.w r0, [pc, 0x80c] |
0x0000f608 movs r2, 6 | r2 = 6;
0x0000f60a ldr r3, [sp, 0x24] | r3 = var_24h_2;
0x0000f60c movw r1, 0x5cd | r1 = 0x5cd;
0x0000f610 add r0, pc | r0 = 0x1f428;
0x0000f612 bl 0x14f78 | fcn_00014f78 (r0, r1, r2, r3, r4);
| label_36:
0x0000f616 ldr r3, [r4, 0xc] | r3 = *((r4 + 0xc));
| if (r3 == 0) {
0x0000f618 cbnz r3, 0xf620 |
0x0000f61a movw r3, 0x4e2e | r3 = 0x4e2e;
0x0000f61e str r3, [r4, 0xc] | *((r4 + 0xc)) = r3;
| }
0x0000f620 movs r2, 1 | r2 = 1;
0x0000f622 mov r1, r6 | r1 = r6;
0x0000f624 mov r0, r7 | r0 = r7;
0x0000f626 bl 0xe38c | fcn_0000e38c (r0, r1, r2, r3);
0x0000f62a ldr.w r8, [r4, 0xc] | r8 = *((r4 + 0xc));
0x0000f62e b 0xf478 | goto label_9;
| label_138:
0x0000f630 ldr r3, [sp, 0x18] | r3 = var_18h;
0x0000f632 ldr r1, [r6, 0x60] | r1 = *((r6 + 0x60));
0x0000f634 ldr r2, [r3, 8] | r2 = *((r3 + 8));
0x0000f636 cmp r2, 0 |
| if (r2 < 0) {
0x0000f638 blt.w 0xf96c | goto label_151;
| }
0x0000f63c cmp r1, 0 |
| if (r1 == 0) {
0x0000f63e beq.w 0xfdc4 | goto label_152;
| }
0x0000f642 ldr r3, [r1] | r3 = *(r1);
0x0000f644 cmp r3, 0 |
| if (r3 == 0) {
0x0000f646 beq.w 0xf972 | goto label_51;
| }
0x0000f64a ldrsb r4, [r3, r2] | r4 = *((r3 + r2));
0x0000f64c cmp r4, 0 |
| if (r4 < 0) {
0x0000f64e blt.w 0xf972 | goto label_51;
| }
| label_50:
0x0000f652 cmp r4, 5 |
0x0000f654 ite le |
| if (r4 > 5) {
0x0000f656 movle r4, 0 | r4 = 0;
| }
| if (r4 <= 5) {
0x0000f658 movgt r4, 1 | r4 = 1;
| }
| label_18:
0x0000f65a cmp r4, 0 |
| if (r4 != 0) {
0x0000f65c bne.w 0xfd00 | goto label_153;
| }
0x0000f660 ldr r2, [r5, 0x28] | r2 = *((r5 + 0x28));
0x0000f662 b 0xf4fc | goto label_10;
| label_128:
0x0000f664 mov r4, ip | r4 = ip;
0x0000f666 b 0xf3c8 | goto label_11;
| label_139:
0x0000f668 ldr r1, [sp, 0x28] | r1 = var_28h_2;
0x0000f66a subs r1, 0 |
0x0000f66c it ne |
| if (r1 == 0) {
0x0000f66e movne r1, 1 | r1 = 1;
| }
0x0000f670 cmp r2, 1 |
0x0000f672 it ne |
| if (r2 == 1) {
0x0000f674 movne r1, 0 | r1 = 0;
| }
0x0000f676 cmp r1, 0 |
| if (r1 != 0) {
0x0000f678 bne.w 0xf990 | goto label_154;
| }
| label_20:
0x0000f67c cmp.w fp, 0 |
| if (fp != 0) {
0x0000f680 beq 0xf68c |
| label_141:
0x0000f682 ldr.w r3, [fp, 8] | r3 = *(arg_8h);
0x0000f686 cmp r3, 0 |
| if (r3 > 0) {
0x0000f688 bgt.w 0xf8ba | goto label_155;
| }
| }
| label_38:
0x0000f68c cmp r4, 0 |
| if (r4 != 0) {
0x0000f68e bne.w 0xf552 | goto label_12;
| }
| label_17:
0x0000f692 cmp.w sl, 0 |
| if (sl != 0) {
0x0000f696 beq 0xf69e |
| label_142:
0x0000f698 mov r0, sl | r0 = sl;
0x0000f69a blx 0x6a5c | SSL_CTX_get_verify_mode ();
| }
| label_143:
0x0000f69e movs r2, 1 | r2 = 1;
0x0000f6a0 mov r1, r6 | r1 = r6;
0x0000f6a2 mov r0, r7 | r0 = r7;
0x0000f6a4 bl 0xe38c | fcn_0000e38c (r0, r1, r2, r3);
0x0000f6a8 ldr.w r2, [pc, 0x76c] |
0x0000f6ac ldr.w r1, [pc, 0x76c] |
0x0000f6b0 ldr r0, [r6, 0x30] | r0 = *((r6 + 0x30));
0x0000f6b2 add r2, pc | r2 = 0x1f4ce;
0x0000f6b4 add r1, pc | r1 = 0x1f4d4;
0x0000f6b6 blx 0x7e60 | BIO_meth_set_read ();
| do {
0x0000f6ba movw r8, 0xd4c1 |
0x0000f6be movt r8, 1 | r8 = 0x1d4c1;
0x0000f6c2 b 0xf478 | goto label_9;
| label_130:
0x0000f6c4 sub.w r3, r0, 0x12 | r3 = r0 - 0x12;
0x0000f6c8 cmp r0, 0x1b |
0x0000f6ca it ne |
| if (r0 != 0x1b) {
0x0000f6cc cmpne r3, 3 | __asm ("cmpne r3, 3");
| }
| if (r0 > 0x1b) {
0x0000f6ce bhi.w 0xfd6c | goto label_156;
| }
0x0000f6d2 ldr r3, [r5, 0x1c] | r3 = *((r5 + 0x1c));
0x0000f6d4 ldr r3, [r3, 0x6c] | r3 = *((r3 + 0x6c));
0x0000f6d6 cmp r3, 3 |
| if (r3 != 3) {
0x0000f6d8 bne.w 0xfd6c | goto label_156;
| }
0x0000f6dc ldr r3, [sp, 0x18] | r3 = var_18h;
0x0000f6de ldr r1, [r6, 0x60] | r1 = *((r6 + 0x60));
0x0000f6e0 ldr r2, [r3, 8] | r2 = *((r3 + 8));
0x0000f6e2 cmp r2, 0 |
| if (r2 < 0) {
0x0000f6e4 blt.w 0xfad2 | goto label_157;
| }
0x0000f6e8 cmp r1, 0 |
| if (r1 != 0) {
0x0000f6ea bne.w 0xf86a | goto label_158;
| }
0x0000f6ee ldr r1, [r6, 4] | r1 = *((r6 + 4));
0x0000f6f0 ldr r3, [r1, 0x10] | r3 = *((r1 + 0x10));
| if (r3 != 0) {
0x0000f6f2 cbz r3, 0xf6fc |
0x0000f6f4 ldrsb r3, [r3, r2] | r3 = *((r3 + r2));
0x0000f6f6 cmp r3, 0 |
| if (r3 >= 0) {
0x0000f6f8 bge.w 0xf87a | goto label_159;
| }
0x0000f6fa strh r7, [r7, 4] | *((r7 + 4)) = r7;
| }
| label_31:
0x0000f6fc adds r1, 0x10 | r1 += 0x10;
| label_14:
0x0000f6fe ldr r3, [r1, 4] | r3 = *((r1 + 4));
0x0000f700 cmp r3, 5 |
0x0000f702 ite le |
| if (r3 > 5) {
0x0000f704 movle r3, 0 | r3 = 0;
| }
| if (r3 <= 5) {
0x0000f706 movgt r3, 1 | r3 = 1;
| }
| label_15:
0x0000f708 cmp r3, 0 |
| if (r3 != 0) {
0x0000f70a bne.w 0xfb46 | goto label_160;
| }
| label_35:
0x0000f70e ldr.w r0, [pc, 0x710] |
0x0000f712 movs r2, 6 | r2 = 6;
0x0000f714 ldr r3, [sp, 0x24] | r3 = var_24h_2;
0x0000f716 movw r1, 0x5f1 | r1 = 0x5f1;
0x0000f71a add r0, pc | r0 = 0x1f540;
0x0000f71c bl 0x14f78 | fcn_00014f78 (r0, r1, r2, r3, r4);
| label_131:
0x0000f720 ldr r0, [r7] | r0 = *(r7);
0x0000f722 blx 0x70a8 | r0 = fcn_000070a8 ();
0x0000f726 mov r8, r0 | r8 = r0;
0x0000f728 cmp r0, 0 |
| if (r0 == 0) {
0x0000f72a beq.w 0xfadc | goto label_161;
| }
0x0000f72e ldr r0, [r4, 8] | r0 = *((r4 + 8));
| if (r0 != 0) {
0x0000f730 cbz r0, 0xf736 |
0x0000f732 blx 0x6a5c | SSL_CTX_get_verify_mode ();
| }
0x0000f736 movs r3, 0 | r3 = 0;
0x0000f738 strd r3, r8, [r4, 4] | __asm ("strd r3, r8, [r4, 4]");
| label_32:
0x0000f73c mov.w r8, 0 | r8 = 0;
0x0000f740 b 0xf478 | goto label_9;
| label_137:
0x0000f742 ldr r3, [sp, 0x18] | r3 = var_18h;
0x0000f744 ldr r1, [r6, 0x60] | r1 = *((r6 + 0x60));
0x0000f746 ldr r2, [r3, 8] | r2 = *((r3 + 8));
0x0000f748 cmp r2, 0 |
| if (r2 < 0) {
0x0000f74a blt.w 0xfac2 | goto label_162;
| }
0x0000f74e cmp r1, 0 |
| if (r1 == 0) {
0x0000f750 beq.w 0xfa28 | goto label_163;
| }
0x0000f754 ldr r3, [r1] | r3 = *(r1);
0x0000f756 cmp r3, 0 |
| if (r3 == 0) {
0x0000f758 beq.w 0xfa38 | goto label_27;
| }
0x0000f75c ldrsb r3, [r3, r2] | r3 = *((r3 + r2));
0x0000f75e cmp r3, 0 |
| if (r3 < 0) {
0x0000f760 blt.w 0xfa38 | goto label_27;
| }
| label_22:
0x0000f764 cmp r3, 5 |
0x0000f766 ite le |
| if (r3 > 5) {
0x0000f768 movle r3, 0 | r3 = 0;
| }
| if (r3 <= 5) {
0x0000f76a movgt r3, 1 | r3 = 1;
| }
| label_23:
0x0000f76c cmp r3, 0 |
| if (r3 != 0) {
0x0000f76e bne.w 0xfb2a | goto label_164;
| }
| label_34:
0x0000f772 ldr.w r0, [pc, 0x6b0] |
0x0000f776 movs r2, 6 | r2 = 6;
0x0000f778 ldr r3, [sp, 0x24] | r3 = var_24h_2;
0x0000f77a movw r1, 0x51b | r1 = 0x51b;
0x0000f77e add r0, pc | r0 = 0x1f5a8;
0x0000f780 bl 0x14f78 | fcn_00014f78 (r0, r1, r2, r3, r4);
0x0000f784 mov r1, r6 | r1 = r6;
0x0000f786 mov r0, r7 | r0 = r7;
0x0000f788 movs r2, 1 | r2 = 1;
0x0000f78a bl 0xe38c | fcn_0000e38c (r0, r1, r2, r3);
0x0000f78e ldr.w r2, [pc, 0x698] |
0x0000f792 ldr.w r1, [pc, 0x698] |
0x0000f796 ldr r0, [r6, 0x30] | r0 = *((r6 + 0x30));
0x0000f798 add r2, pc | r2 = 0x1f5c6;
0x0000f79a add r1, pc | r1 = 0x1f5cc;
0x0000f79c blx 0x7e60 | BIO_meth_set_read ();
0x0000f7a0 b 0xf6ba |
| } while (1);
| label_126:
0x0000f7a2 ldr r3, [sp, 0x18] | r3 = var_18h;
0x0000f7a4 ldrd r5, r8, [sp, 0x34] | __asm ("ldrd r5, r8, [var_34h_2]");
0x0000f7a8 ldr r7, [sp, 0x3c] | r7 = var_3ch_2;
0x0000f7aa ldr r2, [r3, 8] | r2 = *((r3 + 8));
0x0000f7ac ldr r1, [r6, 0x60] | r1 = *((r6 + 0x60));
0x0000f7ae cmp r2, 0 |
| if (r2 < 0) {
0x0000f7b0 blt.w 0xfaca | goto label_165;
| }
0x0000f7b4 cmp r1, 0 |
| if (r1 == 0) {
0x0000f7b6 beq.w 0xfa44 | goto label_166;
| }
0x0000f7ba ldr r3, [r1] | r3 = *(r1);
0x0000f7bc cmp r3, 0 |
| if (r3 == 0) {
0x0000f7be beq.w 0xfa54 | goto label_29;
| }
0x0000f7c2 ldrsb r3, [r3, r2] | r3 = *((r3 + r2));
0x0000f7c4 cmp r3, 0 |
| if (r3 < 0) {
0x0000f7c6 blt.w 0xfa54 | goto label_29;
| }
| label_24:
0x0000f7ca cmp r3, 7 |
0x0000f7cc ite le |
| if (r3 > 7) {
0x0000f7ce movle r3, 0 | r3 = 0;
| }
| if (r3 <= 7) {
0x0000f7d0 movgt r3, 1 | r3 = 1;
| }
| label_25:
0x0000f7d2 cmp r3, 0 |
| if (r3 != 0) {
0x0000f7d4 bne.w 0xfb62 | goto label_167;
| }
0x0000f7d8 ldr r3, [sp, 0x30] | r3 = var_30h_2;
0x0000f7da cmp r4, r3 |
| if (r4 == r3) {
0x0000f7dc beq.w 0xf4a2 | goto label_13;
| }
0x0000f7e0 ldr r0, [r7] | r0 = *(r7);
0x0000f7e2 subs r2, r4, r3 | r2 = r4 - r3;
0x0000f7e4 mov r1, r3 | r1 = r3;
0x0000f7e6 blx 0x690c | r0 = SSL_client_hello_get0_ext ();
0x0000f7ea cmp r0, 0 |
| if (r0 == 0) {
0x0000f7ec beq.w 0xf4a2 | goto label_13;
| }
0x0000f7ee add r6, sp, 0x164 | r6 = sp + 0x164;
0x0000f7f0 ldr r3, [sp, 0x18] | r3 = var_18h;
0x0000f7f2 movw r8, 0xd4c1 |
0x0000f7f6 ldr.w r4, [pc, 0x638] |
0x0000f7f8 mov r0, r7 | r0 = r7;
0x0000f7fa movt r8, 1 | r8 = 0x1d4c1;
0x0000f7fe ldr.w r1, [pc, 0x634] |
0x0000f802 ldr r2, [r3, 8] | r2 = *((r3 + 8));
0x0000f804 ldr r3, [sp, 0x2c] | r3 = var_2ch_2;
0x0000f806 add r4, pc | r4 = 0x1f63c;
0x0000f808 add r1, pc | r1 = 0x1f642;
0x0000f80a mov r0, r4 | r0 = r4;
0x0000f80c str r1, [sp, 8] | var_8h_3 = r1;
0x0000f80e movw r1, 0x4f6 | r1 = 0x4f6;
0x0000f812 str r3, [sp, 0xc] | var_ch_3 = r3;
0x0000f814 movs r3, 0 | r3 = 0;
0x0000f816 str r3, [sp] | *(sp) = r3;
0x0000f818 movs r3, 4 | r3 = 4;
0x0000f81a str r6, [sp, 4] | var_4h_2 = r6;
0x0000f81c blx 0x7380 | BIO_set_init ();
0x0000f820 ldr r3, [sp, 0x24] | r3 = var_24h_2;
0x0000f822 movs r2, 4 | r2 = 4;
0x0000f824 mov.w r1, 0x4f8 | r1 = 0x4f8;
0x0000f828 mov r0, r4 | r0 = r4;
0x0000f82a bl 0x14f78 | fcn_00014f78 (r0, r1, r2, r3, r4);
0x0000f82e b 0xf478 | goto label_9;
| label_127:
0x0000f830 ldr r3, [sp, 0x18] | r3 = var_18h;
0x0000f832 movw r8, 0x4e2e | r8 = 0x4e2e;
0x0000f836 ldr.w r4, [pc, 0x600] |
0x0000f83a ldr.w r1, [pc, 0x600] |
0x0000f83e ldr r2, [r3, 8] | r2 = *((r3 + 8));
0x0000f840 movs r3, 0 | r3 = 0;
0x0000f842 add r4, pc | r4 = 0x1f680;
0x0000f844 str r3, [sp] | *(sp) = r3;
0x0000f846 add r1, pc | r1 = 0x1f688;
0x0000f848 mov r0, r4 | r0 = r4;
0x0000f84a str r1, [sp, 8] | var_8h_3 = r1;
0x0000f84c movs r3, 3 | r3 = 3;
0x0000f84e movw r1, 0x4df | r1 = 0x4df;
0x0000f852 str r7, [sp, 0xc] | var_ch_3 = r7;
0x0000f854 str r6, [sp, 4] | var_4h_2 = r6;
0x0000f856 blx 0x7380 | BIO_set_init ();
0x0000f85a ldr r3, [sp, 0x24] | r3 = var_24h_2;
0x0000f85c movs r2, 3 | r2 = 3;
0x0000f85e movw r1, 0x4e2 | r1 = 0x4e2;
0x0000f862 mov r0, r4 | r0 = r4;
0x0000f864 bl 0x14f78 | fcn_00014f78 (r0, r1, r2, r3, r4);
0x0000f868 b 0xf478 | goto label_9;
| label_158:
0x0000f86a ldr r3, [r1] | r3 = *(r1);
0x0000f86c cmp r3, 0 |
| if (r3 == 0) {
0x0000f86e beq.w 0xf6fe | goto label_14;
| }
0x0000f872 ldrsb r3, [r3, r2] | r3 = *((r3 + r2));
0x0000f874 cmp r3, 0 |
| if (r3 < 0) {
0x0000f876 blt.w 0xf6fe | goto label_14;
| }
| label_159:
0x0000f87a cmp r3, 5 |
0x0000f87c ite le |
| if (r3 > 5) {
0x0000f87e movle r3, 0 | r3 = 0;
| }
| if (r3 <= 5) {
0x0000f880 movgt r3, 1 | r3 = 1;
| }
0x0000f882 b 0xf708 | goto label_15;
| label_132:
0x0000f884 cmp r1, 0 |
| if (r1 == 0) {
0x0000f886 beq.w 0xfdd6 | goto label_168;
| }
| label_47:
0x0000f88a ldr r3, [r1, 4] | r3 = *((r1 + 4));
0x0000f88c cmp r3, 5 |
0x0000f88e ite le |
| if (r3 > 5) {
0x0000f890 movle r3, 0 | r3 = 0;
| }
| if (r3 <= 5) {
0x0000f892 movgt r3, 1 | r3 = 1;
| }
0x0000f894 b 0xf42c | goto label_16;
| if (r1 == 0) {
| label_39:
0x0000f896 cbnz r1, 0xf89c |
0x0000f898 ldr r1, [r6, 4] | r1 = *((r6 + 4));
| label_63:
0x0000f89a adds r1, 0x10 | r1 += 0x10;
| }
| label_40:
0x0000f89c ldr r3, [r1, 4] | r3 = *((r1 + 4));
0x0000f89e cmp r3, 5 |
| if (r3 > 5) {
0x0000f8a0 bgt.w 0xfcb4 | goto label_169;
| }
| label_21:
0x0000f8a4 cmp.w fp, 0 |
| if (fp == 0) {
0x0000f8a8 beq.w 0xf692 | goto label_17;
| }
| label_41:
0x0000f8ac ldr.w r3, [fp, 8] | r3 = *(arg_8h);
0x0000f8b0 cmp r3, 0 |
0x0000f8b2 it gt |
| if (r3 > 0) {
0x0000f8b4 movgt r4, 0 | r4 = 0;
| goto label_170;
| }
| if (r3 <= 0) {
| label_170:
0x0000f8b6 ble.w 0xf692 | goto label_17;
| }
| label_155:
0x0000f8ba add r1, sp, 0x44 | r1 += var_44h_3;
0x0000f8bc ldr r0, [r7] | r0 = *(r7);
0x0000f8be add r2, sp, 0x48 | r2 += var_48h;
0x0000f8c0 blx 0x7528 | fcn_00007528 ();
0x0000f8c4 ldr r1, [sp, 0x44] | r1 = var_44h_3;
0x0000f8c6 cmp r1, 0 |
| if (r1 == 0) {
0x0000f8c8 beq.w 0xfc34 | goto label_171;
| }
0x0000f8ca strh r4, [r6, 0xc] | *((r6 + 0xc)) = r4;
0x0000f8cc ldr r2, [sp, 0x48] | r2 = var_48h;
0x0000f8ce cmp r2, 0 |
| if (r2 == 0) {
0x0000f8d0 beq.w 0xfc34 | goto label_171;
| }
0x0000f8d4 mov r3, r7 | r3 = r7;
0x0000f8d6 ldr.w r5, [fp, 8] | r5 = *(arg_8h);
0x0000f8d8 str r0, [r1, r0] | *((r1 + r0)) = r0;
0x0000f8da mov r7, fp | r7 = fp;
0x0000f8dc str r4, [sp, 0x20] | var_20h_2 = r4;
0x0000f8de str r6, [sp, 0x1c] | var_1ch_2 = r6;
0x0000f8e0 mov.w sb, 0 | sb = 0;
0x0000f8e4 mov r4, r1 | r4 = r1;
0x0000f8e6 mov r6, r2 | r6 = r2;
0x0000f8e8 mov fp, r3 |
0x0000f8ea b 0xf904 |
| while (r5 > sb) {
0x0000f8ec ldr r2, [r7, 0x10] | r2 = *((r7 + 0x10));
0x0000f8ee mov r0, r4 | r0 = r4;
0x0000f8f0 ldr.w r1, [r2, sb, lsl 2] | offset_1 = sb << 2;
| r1 = *((r2 + offset_1));
0x0000f8f4 mov r2, r6 | r2 = r6;
0x0000f8f6 add.w sb, sb, 1 | sb++;
0x0000f8fa blx 0x6a68 | r0 = ASN1_d2i_bio ();
0x0000f8fe cmp r0, 0 |
| if (r0 == 0) {
0x0000f900 beq.w 0xfef6 | goto label_172;
| }
0x0000f904 cmp r5, sb |
0x0000f906 bgt 0xf8ec |
| }
0x0000f908 mov r2, r6 | r2 = r6;
0x0000f90a ldr r6, [sp, 0x1c] | r6 = var_1ch_2;
0x0000f90c mov r1, r4 | r1 = r4;
0x0000f90e mov r7, fp | r7 = fp;
0x0000f910 ldr r0, [r6] | r0 = *(r6);
0x0000f912 blx 0x7594 | fcn_00007594 ();
0x0000f916 ldr r3, [sp, 0x18] | r3 = var_18h;
0x0000f918 ldr r2, [r3, 8] | r2 = *((r3 + 8));
0x0000f91a cmp r2, 0 |
| if (r2 < 0) {
0x0000f91c blt.w 0xffd8 | goto label_173;
| }
0x0000f920 ldr r1, [r6, 0x60] | r1 = *((r6 + 0x60));
0x0000f922 cmp r1, 0 |
| if (r1 == 0) {
0x0000f924 beq.w 0xff58 | goto label_174;
| }
0x0000f928 ldr r3, [r1] | r3 = *(r1);
0x0000f92a cmp r3, 0 |
| if (r3 == 0) {
0x0000f92c beq.w 0xff68 | goto label_76;
| }
0x0000f930 ldrsb r3, [r3, r2] | r3 = *((r3 + r2));
0x0000f932 cmp r3, 0 |
| if (r3 < 0) {
0x0000f934 blt.w 0xff68 | goto label_76;
| }
| label_65:
0x0000f938 cmp r3, 5 |
0x0000f93a ite le |
| if (r3 > 5) {
0x0000f93c movle r3, 0 | r3 = 0;
| }
| if (r3 <= 5) {
0x0000f93e movgt r3, 1 | r3 = 1;
| }
| label_66:
0x0000f940 cmp r3, 0 |
| if (r3 == 0) {
0x0000f942 beq.w 0xf692 | goto label_17;
| }
0x0000f946 ldr r3, [sp, 0x2c] | r3 = var_2ch_2;
0x0000f948 movw r1, 0x579 | r1 = 0x579;
0x0000f94c strd r0, r3, [sp, 0xc] | __asm ("strd r0, r3, [sp, 0xc]");
0x0000f94e lsls r3, r0, 0xc | r3 = r0 << 0xc;
0x0000f950 ldr.w r3, [pc, 0x4ec] |
0x0000f954 ldr.w r0, [pc, 0x4ec] |
0x0000f958 add r3, pc | r3 = 0x1f79c;
0x0000f95a strd r6, r3, [sp, 4] | __asm ("strd r6, r3, [sp, 4]");
0x0000f95e movs r3, 0 | r3 = 0;
0x0000f960 str r3, [sp] | *(sp) = r3;
0x0000f962 add r0, pc | r0 = 0x1f7aa;
0x0000f964 movs r3, 6 | r3 = 6;
0x0000f966 blx 0x7380 | BIO_set_init ();
0x0000f96a b 0xf692 | goto label_17;
| label_151:
0x0000f96c cmp r1, 0 |
| if (r1 == 0) {
0x0000f96e beq.w 0xfed6 | goto label_175;
| }
| label_51:
0x0000f972 ldr r4, [r1, 4] | r4 = *((r1 + 4));
0x0000f974 cmp r4, 5 |
0x0000f976 ite le |
| if (r4 > 5) {
0x0000f978 movle r4, 0 | r4 = 0;
| }
| if (r4 <= 5) {
0x0000f97a movgt r4, 1 | r4 = 1;
| }
0x0000f97c b 0xf65a | goto label_18;
| label_148:
0x0000f97e cmp r1, 0 |
| if (r1 == 0) {
0x0000f980 beq.w 0xfef2 | goto label_176;
| }
| label_54:
0x0000f984 ldr r3, [r1, 4] | r3 = *((r1 + 4));
0x0000f986 cmp r3, 5 |
0x0000f988 ite le |
| if (r3 > 5) {
0x0000f98a movle r3, 0 | r3 = 0;
| }
| if (r3 <= 5) {
0x0000f98c movgt r3, 1 | r3 = 1;
| }
0x0000f98e b 0xf5fe | goto label_19;
| label_154:
0x0000f990 ldr.w r2, [pc, 0x4b4] |
0x0000f994 mov r0, r3 | r0 = r3;
0x0000f996 ldr r1, [sp, 0x24] | r1 = var_24h_2;
0x0000f998 add r2, pc | r2 = 0x1f7e4;
0x0000f99a str r2, [sp] | *(sp) = r2;
0x0000f99c mov r2, r6 | r2 = r6;
0x0000f99e bl 0x17870 | fcn_00017870 (r0, r1, r2, r3, r4, r5, r6);
0x0000f9a2 ldr r1, [sp, 0x28] | r1 = var_28h_2;
0x0000f9a4 mov r5, r0 | r5 = r0;
0x0000f9a6 blx 0x6924 | r0 = BIO_new ();
0x0000f9aa cmp r0, 0 |
| if (r0 == 0) {
0x0000f9ac beq.w 0xf67c | goto label_20;
| }
0x0000f9b0 ldrb r3, [r5] | r3 = *(r5);
0x0000f9b2 cmp r3, 0x2a |
| if (r3 != 0x2a) {
0x0000f9b4 bne 0xf9d2 | goto label_177;
| }
0x0000f9b6 ldrb r3, [r5, 1] | r3 = *((r5 + 1));
0x0000f9b8 cmp r3, 0x2e |
| if (r3 != 0x2e) {
0x0000f9ba bne 0xf9d2 | goto label_177;
| }
0x0000f9bc ldr r0, [sp, 0x28] | r0 = var_28h_2;
0x0000f9be movs r1, 0x2e | r1 = 0x2e;
0x0000f9c0 blx 0x7e0c | r0 = OBJ_txt2nid ();
| if (r0 == 0) {
0x0000f9c4 cbz r0, 0xf9d2 | goto label_177;
| }
0x0000f9c6 adds r1, r5, 1 | r1 = r5 + 1;
0x0000f9c8 blx 0x6924 | r0 = BIO_new ();
0x0000f9cc cmp r0, 0 |
| if (r0 == 0) {
0x0000f9ce beq.w 0xf67c | goto label_20;
| }
| label_177:
0x0000f9d2 ldr r3, [sp, 0x18] | r3 = var_18h;
0x0000f9d4 ldr r1, [r6, 0x60] | r1 = *((r6 + 0x60));
0x0000f9d6 ldr r2, [r3, 8] | r2 = *((r3 + 8));
0x0000f9d8 cmp r2, 0 |
| if (r2 < 0) {
0x0000f9da blt.w 0xfeda | goto label_178;
| }
0x0000f9de cmp r1, 0 |
| if (r1 == 0) {
0x0000f9e0 beq.w 0xffc6 | goto label_179;
| }
0x0000f9e4 ldr r3, [r1] | r3 = *(r1);
0x0000f9e6 cmp r3, 0 |
| if (r3 == 0) {
0x0000f9e8 beq.w 0xfee0 | goto label_180;
| }
0x0000f9ec ldrsb r3, [r3, r2] | r3 = *((r3 + r2));
0x0000f9ee cmp r3, 0 |
| if (r3 < 0) {
0x0000f9f0 blt.w 0xfee0 | goto label_180;
| }
0x0000f9f2 strh r6, [r6, 0x12] | *((r6 + 0x12)) = r6;
| label_75:
0x0000f9f4 cmp r3, 5 |
0x0000f9f6 ite le |
| if (r3 > 5) {
0x0000f9f8 movle r3, 0 | r3 = 0;
| }
| if (r3 <= 5) {
0x0000f9fa movgt r3, 1 | r3 = 1;
| }
0x0000f9fc cmp r3, 0 |
| if (r3 == 0) {
0x0000f9fe beq.w 0xf8a4 | goto label_21;
| }
| label_57:
0x0000fa02 ldr r3, [sp, 0x28] | r3 = var_28h_2;
0x0000fa04 movw r1, 0x54f | r1 = 0x54f;
0x0000fa08 ldr.w r0, [pc, 0x440] |
0x0000fa0a lsls r0, r0, 0x11 | r0 <<= 0x11;
0x0000fa0c str r6, [sp, 4] | var_4h_2 = r6;
0x0000fa0e strd r5, r3, [sp, 0xc] | __asm ("strd r5, r3, [sp, 0xc]");
0x0000fa12 ldr.w r3, [pc, 0x43c] |
0x0000fa16 add r0, pc | r0 = 0x1f866;
0x0000fa18 add r3, pc | r3 = 0x1f86e;
0x0000fa1a str r3, [sp, 8] | var_8h_3 = r3;
0x0000fa1c movs r3, 0 | r3 = 0;
0x0000fa1e str r3, [sp] | *(sp) = r3;
0x0000fa20 movs r3, 6 | r3 = 6;
0x0000fa22 blx 0x7380 | BIO_set_init ();
0x0000fa26 b 0xf8a4 | goto label_21;
| label_163:
0x0000fa28 ldr r1, [r6, 4] | r1 = *((r6 + 4));
0x0000fa2a ldr r3, [r1, 0x10] | r3 = *((r1 + 0x10));
| if (r3 == 0) {
0x0000fa2c cbz r3, 0xfa36 | goto label_28;
| }
0x0000fa2e ldrsb r3, [r3, r2] | r3 = *((r3 + r2));
0x0000fa30 cmp r3, 0 |
| if (r3 >= 0) {
0x0000fa32 bge.w 0xf764 | goto label_22;
| }
0x0000fa34 add r6, sp, 0x25c | r6 = sp + 0x25c;
| label_28:
0x0000fa36 adds r1, 0x10 | r1 += 0x10;
| label_27:
0x0000fa38 ldr r3, [r1, 4] | r3 = *((r1 + 4));
0x0000fa3a cmp r3, 5 |
0x0000fa3c ite le |
| if (r3 > 5) {
0x0000fa3e movle r3, 0 | r3 = 0;
| }
| if (r3 <= 5) {
0x0000fa40 movgt r3, 1 | r3 = 1;
| }
0x0000fa42 b 0xf76c | goto label_23;
| label_166:
0x0000fa44 ldr r1, [r6, 4] | r1 = *((r6 + 4));
0x0000fa46 ldr r3, [r1, 0x10] | r3 = *((r1 + 0x10));
| if (r3 == 0) {
0x0000fa48 cbz r3, 0xfa52 | goto label_30;
| }
0x0000fa4a ldrsb r3, [r3, r2] | r3 = *((r3 + r2));
0x0000fa4c cmp r3, 0 |
| if (r3 >= 0) {
0x0000fa4e bge.w 0xf7ca | goto label_24;
| }
| label_30:
0x0000fa52 adds r1, 0x10 | r1 += 0x10;
| label_29:
0x0000fa54 ldr r3, [r1, 4] | r3 = *((r1 + 4));
0x0000fa56 cmp r3, 7 |
0x0000fa58 ite le |
| if (r3 > 7) {
0x0000fa5a movle r3, 0 | r3 = 0;
| }
| if (r3 <= 7) {
0x0000fa5c movgt r3, 1 | r3 = 1;
| }
0x0000fa5e b 0xf7d2 | goto label_25;
| label_136:
0x0000fa60 ldr r0, [r7] | r0 = *(r7);
0x0000fa62 movs r2, 0 | r2 = 0;
0x0000fa64 ldr r3, [sp, 0x28] | r3 = var_28h_2;
0x0000fa66 movs r1, 0x37 | r1 = 0x37;
0x0000fa68 blx 0x7308 | r0 = loc_imp_apr_time_exp_lt ();
0x0000fa6c cmp r0, 0 |
| if (r0 == 0) {
0x0000fa6e beq.w 0xfd82 | goto label_181;
| }
0x0000fa72 ldr r3, [sp, 0x18] | r3 = var_18h;
0x0000fa74 ldr r1, [r6, 0x60] | r1 = *((r6 + 0x60));
0x0000fa76 ldr r2, [r3, 8] | r2 = *((r3 + 8));
0x0000fa78 cmp r2, 0 |
| if (r2 < 0) {
0x0000fa7a blt.w 0xfcee | goto label_182;
| }
0x0000fa7e cmp r1, 0 |
| if (r1 == 0) {
0x0000fa80 beq.w 0xff1a | goto label_183;
| }
0x0000fa84 ldr r3, [r1] | r3 = *(r1);
0x0000fa86 cmp r3, 0 |
| if (r3 == 0) {
0x0000fa88 beq.w 0xfcf4 | goto label_184;
| }
0x0000fa8c ldrsb r3, [r3, r2] | r3 = *((r3 + r2));
0x0000fa8e cmp r3, 0 |
| if (r3 < 0) {
0x0000fa90 blt.w 0xfcf4 | goto label_184;
| }
0x0000fa94 cmp r3, 9 |
0x0000fa96 ite le |
| if (r3 > 9) {
0x0000fa98 movle r3, 0 | r3 = 0;
| }
| if (r3 <= 9) {
0x0000fa9a movgt r3, 1 | r3 = 1;
| }
| label_43:
0x0000fa9c cmp r3, 0 |
| if (r3 == 0) {
0x0000fa9e beq.w 0xf4b6 | goto label_26;
| }
0x0000faa2 ldr r3, [sp, 0x28] | r3 = var_28h_2;
0x0000faa4 movw r1, 0x50c | r1 = 0x50c;
0x0000faa6 str r4, [r1, r4] | *((r1 + r4)) = r4;
0x0000faa8 ldr r0, [pc, 0x3a8] |
0x0000faaa str r6, [sp, 4] | var_4h_2 = r6;
0x0000faac str r3, [sp, 0xc] | var_ch_3 = r3;
0x0000faae ldr r3, [pc, 0x3a8] |
0x0000fab0 add r0, pc | r0 = 0x1f908;
0x0000fab2 add r3, pc | r3 = 0x1f910;
0x0000fab4 str r3, [sp, 8] | var_8h_3 = r3;
0x0000fab6 movs r3, 0 | r3 = 0;
0x0000fab8 str r3, [sp] | *(sp) = r3;
0x0000faba movs r3, 0xa | r3 = 0xa;
0x0000fabc blx 0x7380 | BIO_set_init ();
0x0000fac0 b 0xf4b6 | goto label_26;
| label_162:
0x0000fac2 cmp r1, 0 |
| if (r1 != 0) {
0x0000fac4 bne 0xfa38 | goto label_27;
| }
0x0000fac6 ldr r1, [r6, 4] | r1 = *((r6 + 4));
0x0000fac8 b 0xfa36 | goto label_28;
| label_165:
0x0000faca cmp r1, 0 |
| if (r1 != 0) {
0x0000facc bne 0xfa54 | goto label_29;
| }
0x0000face ldr r1, [r6, 4] | r1 = *((r6 + 4));
0x0000fad0 b 0xfa52 | goto label_30;
| label_157:
0x0000fad2 cmp r1, 0 |
| if (r1 != 0) {
0x0000fad4 bne.w 0xf6fe | goto label_14;
| }
0x0000fad6 add r6, sp, 0x4c | r6 = sp + 0x4c;
0x0000fad8 ldr r1, [r6, 4] | r1 = *((r6 + 4));
0x0000fada b 0xf6fc | goto label_31;
| label_161:
0x0000fadc ldr r3, [r5, 0x1c] | r3 = *((r5 + 0x1c));
0x0000fade ldr r3, [r3, 0x6c] | r3 = *((r3 + 0x6c));
0x0000fae0 cmp r3, 2 |
| if (r3 != 2) {
0x0000fae2 bne.w 0xf73c | goto label_32;
| }
0x0000fae6 ldr r3, [r4, 8] | r3 = *((r4 + 8));
0x0000fae8 cmp r3, 0 |
| if (r3 != 0) {
0x0000faea bne.w 0xf73c | goto label_32;
| }
0x0000faee ldr r3, [sp, 0x18] | r3 = var_18h;
0x0000faf0 ldr r1, [r6, 0x60] | r1 = *((r6 + 0x60));
0x0000faf2 ldr r2, [r3, 8] | r2 = *((r3 + 8));
0x0000faf4 cmp r2, 0 |
| if (r2 < 0) {
0x0000faf6 blt.w 0xffbe | goto label_185;
| }
0x0000fafa cmp r1, 0 |
| if (r1 == 0) {
0x0000fafc beq.w 0xff74 | goto label_186;
| }
0x0000fb00 ldr r3, [r1] | r3 = *(r1);
0x0000fb02 cmp r3, 0 |
| if (r3 == 0) {
0x0000fb04 beq.w 0xff84 | goto label_72;
| }
0x0000fb08 ldrsb r3, [r3, r2] | r3 = *((r3 + r2));
0x0000fb0a cmp r3, 0 |
| if (r3 < 0) {
0x0000fb0c blt.w 0xff84 | goto label_72;
| }
| label_67:
0x0000fb10 cmp r3, 5 |
0x0000fb12 ite le |
| if (r3 > 5) {
0x0000fb14 movle r3, 0 | r3 = 0;
| }
| if (r3 <= 5) {
0x0000fb16 movgt r3, 1 | r3 = 1;
| }
| label_68:
0x0000fb18 cmp r3, 0 |
| if (r3 != 0) {
0x0000fb1a bne.w 0xffa2 | goto label_187;
| }
| label_71:
0x0000fb1e movs r2, 1 | r2 = 1;
0x0000fb20 mov r1, r6 | r1 = r6;
0x0000fb22 mov r0, r7 | r0 = r7;
0x0000fb24 bl 0xe38c | fcn_0000e38c (r0, r1, r2, r3);
0x0000fb28 b 0xf474 | goto label_33;
| label_164:
0x0000fb2a ldr r3, [pc, 0x330] |
0x0000fb2c movw r1, 0x519 | r1 = 0x519;
0x0000fb30 ldr r0, [pc, 0x32c] |
0x0000fb32 add r3, pc | r3 = 0x1f994;
0x0000fb34 strd r6, r3, [sp, 4] | __asm ("strd r6, r3, [sp, 4]");
0x0000fb38 movs r3, 0 | r3 = 0;
0x0000fb3a str r3, [sp] | *(sp) = r3;
0x0000fb3c add r0, pc | r0 = "AH01894: Unable to initialize TLS servername extension callback (incompatible OpenSSL version?)";
0x0000fb3e movs r3, 6 | r3 = 6;
0x0000fb40 blx 0x7380 | BIO_set_init ();
0x0000fb44 b 0xf772 | goto label_34;
| label_160:
0x0000fb46 ldr r3, [pc, 0x31c] |
0x0000fb48 movw r1, 0x5ec | r1 = 0x5ec;
0x0000fb4c ldr r0, [pc, 0x318] |
0x0000fb4e str r6, [sp, 4] | var_4h_2 = r6;
0x0000fb50 add r3, pc | r3 = 0x1f9ba;
0x0000fb52 str r3, [sp, 8] | var_8h_3 = r3;
0x0000fb54 movs r3, 0 | r3 = 0;
0x0000fb56 str r3, [sp] | *(sp) = r3;
0x0000fb58 add r0, pc | r0 = 0x1f9c4;
0x0000fb5a movs r3, 6 | r3 = 6;
0x0000fb5c blx 0x7380 | BIO_set_init ();
0x0000fb60 b 0xf70e | goto label_35;
| label_167:
0x0000fb62 ldr r3, [sp, 0x2c] | r3 = var_2ch_2;
0x0000fb64 mov.w r1, 0x4f0 | r1 = 0x4f0;
0x0000fb68 ldr r0, [pc, 0x300] |
0x0000fb6a str r6, [sp, 4] | var_4h_2 = r6;
0x0000fb6c str r3, [sp, 0xc] | var_ch_3 = r3;
0x0000fb6e ldr r3, [pc, 0x300] |
0x0000fb70 add r0, pc | r0 = 0x1f9e0;
0x0000fb72 add r3, pc | r3 = 0x1f9e8;
0x0000fb74 str r3, [sp, 8] | var_8h_3 = r3;
0x0000fb76 ldr r3, [sp, 0x30] | r3 = var_30h_2;
0x0000fb78 subs r3, r4, r3 | r3 = r4 - r3;
0x0000fb7a str r3, [sp, 0x10] | var_10h_2 = r3;
0x0000fb7c movs r3, 0 | r3 = 0;
0x0000fb7e str r3, [sp] | *(sp) = r3;
0x0000fb80 movs r3, 8 | r3 = 8;
0x0000fb82 blx 0x7380 | BIO_set_init ();
0x0000fb84 invalid |
| label_144:
0x0000fb88 ldr r3, [sp, 0x18] | r3 = var_18h;
0x0000fb8a ldr r1, [r6, 0x60] | r1 = *((r6 + 0x60));
0x0000fb8c ldr r2, [r3, 8] | r2 = *((r3 + 8));
0x0000fb8e cmp r2, 0 |
| if (r2 < 0) {
0x0000fb90 blt.w 0xfcdc | goto label_188;
| }
0x0000fb94 cmp r1, 0 |
| if (r1 == 0) {
0x0000fb96 beq.w 0xff06 | goto label_189;
| }
0x0000fb9a ldr r3, [r1] | r3 = *(r1);
0x0000fb9c cmp r3, 0 |
| if (r3 == 0) {
0x0000fb9e beq.w 0xfce2 | goto label_190;
| }
0x0000fba2 ldrsb r3, [r3, r2] | r3 = *((r3 + r2));
0x0000fba4 cmp r3, 0 |
| if (r3 < 0) {
0x0000fba6 blt.w 0xfce2 | goto label_190;
| }
0x0000fbaa cmp r3, 5 |
0x0000fbac ite le |
| if (r3 > 5) {
0x0000fbae movle r3, 0 | r3 = 0;
| }
| if (r3 <= 5) {
0x0000fbb0 movgt r3, 1 | r3 = 1;
| }
| label_42:
0x0000fbb2 cmp r3, 0 |
| if (r3 == 0) {
0x0000fbb4 beq.w 0xf616 | goto label_36;
| }
0x0000fbb8 ldr r1, [pc, 0x2b8] |
0x0000fbba movs r3, 6 | r3 = 6;
0x0000fbbc ldr r0, [pc, 0x2b8] |
0x0000fbbe str r5, [sp] | *(sp) = r5;
0x0000fbc0 add r1, pc | r1 = 0x1fa38;
0x0000fbc2 str r6, [sp, 4] | var_4h_2 = r6;
0x0000fbc4 str r1, [sp, 8] | var_8h_3 = r1;
0x0000fbc6 add r0, pc | r0 = 0x1fa42;
0x0000fbc8 movw r1, 0x5aa | r1 = 0x5aa;
0x0000fbcc blx 0x7380 | BIO_set_init ();
0x0000fbd0 b 0xf616 | goto label_36;
| label_147:
0x0000fbd2 cmp.w sb, 0 |
| if (sb < 0) {
0x0000fbd6 blt.w 0xfd20 | goto label_191;
| }
0x0000fbda cmp r1, 0 |
| if (r1 == 0) {
0x0000fbdc beq.w 0xff2e | goto label_192;
| }
0x0000fbe0 ldr r3, [r1] | r3 = *(r1);
0x0000fbe2 cmp r3, 0 |
| if (r3 == 0) {
0x0000fbe4 beq.w 0xfd26 | goto label_193;
| }
0x0000fbe8 ldrsb.w r3, [r3, sb] | r3 = *((r3 + sb));
0x0000fbec cmp r3, 0 |
| if (r3 < 0) {
0x0000fbee blt.w 0xfd26 | goto label_193;
| }
| label_62:
0x0000fbf2 cmp r3, 6 |
0x0000fbf4 ite le |
| if (r3 > 6) {
0x0000fbf6 movle r3, 0 | r3 = 0;
| }
| if (r3 <= 6) {
0x0000fbf8 movgt r3, 1 | r3 = 1;
| }
| label_44:
0x0000fbfa cmp r3, 0 |
| if (r3 == 0) {
0x0000fbfc beq.w 0xf616 | goto label_36;
| }
0x0000fc00 ldr r1, [pc, 0x278] |
0x0000fc02 movs r3, 7 | r3 = 7;
0x0000fc04 ldr r0, [pc, 0x278] |
0x0000fc06 mov r2, sb | r2 = sb;
0x0000fc08 str r5, [sp] | *(sp) = r5;
0x0000fc0a add r1, pc | r1 = 0x1fa8a;
0x0000fc0c str r6, [sp, 4] | var_4h_2 = r6;
0x0000fc0e str r1, [sp, 8] | var_8h_3 = r1;
0x0000fc10 add r0, pc | r0 = 0x1fa94;
0x0000fc12 movw r1, 0x5c1 | r1 = 0x5c1;
0x0000fc16 blx 0x7380 | BIO_set_init ();
0x0000fc1a b 0xf616 | goto label_36;
| label_146:
0x0000fc1c blx 0x73d4 | r0 = PEM_X509_INFO_read_bio ();
0x0000fc20 ubfx r3, r0, 0, 0xc | r3 = (r0 >> 0) & ((1 << 0xc) - 1);
0x0000fc24 cmp r3, 0x9c |
| if (r3 != 0x9c) {
0x0000fc26 bne.w 0xf5c6 | goto label_37;
| }
0x0000fc2a movw r8, 0xd4c0 |
0x0000fc2e movt r8, 1 | r8 = 0x1d4c0;
0x0000fc32 b 0xf478 | goto label_9;
| label_171:
0x0000fc34 cmp.w sb, 0 |
| if (sb != 0) {
0x0000fc38 bne.w 0xf68c | goto label_38;
| }
0x0000fc3c ldr r3, [sp, 0x18] | r3 = var_18h;
0x0000fc3e ldr r1, [r6, 0x60] | r1 = *((r6 + 0x60));
0x0000fc40 ldr r2, [r3, 8] | r2 = *((r3 + 8));
0x0000fc42 cmp r2, 0 |
| if (r2 < 0) {
0x0000fc44 blt.w 0xfec4 | goto label_194;
| }
0x0000fc48 cmp r1, 0 |
| if (r1 == 0) {
0x0000fc4a beq.w 0xff90 | goto label_195;
| }
0x0000fc4e ldr r3, [r1] | r3 = *(r1);
0x0000fc50 cmp r3, 0 |
| if (r3 == 0) {
0x0000fc52 beq.w 0xfeca | goto label_196;
| }
0x0000fc56 ldrsb r3, [r3, r2] | r3 = *((r3 + r2));
0x0000fc58 cmp r3, 0 |
| if (r3 < 0) {
0x0000fc5a blt.w 0xfeca | goto label_196;
| }
| label_70:
0x0000fc5e cmp r3, 5 |
0x0000fc60 ite le |
| if (r3 > 5) {
0x0000fc62 movle r3, 0 | r3 = 0;
| }
| if (r3 <= 5) {
0x0000fc64 movgt r3, 1 | r3 = 1;
| }
| label_55:
0x0000fc66 cmp r3, 0 |
| if (r3 == 0) {
0x0000fc68 beq.w 0xf692 | goto label_17;
| }
0x0000fc6c ldr r3, [sp, 0x2c] | r3 = var_2ch_2;
0x0000fc6e mov.w r1, 0x568 | r1 = 0x568;
0x0000fc72 ldr r0, [pc, 0x210] |
0x0000fc74 str r3, [sp, 0xc] | var_ch_3 = r3;
0x0000fc76 ldr r3, [pc, 0x210] |
0x0000fc78 add r0, pc | r0 = 0x1fb02;
0x0000fc7a add r3, pc | r3 = 0x1fb08;
0x0000fc7c strd r6, r3, [sp, 4] | __asm ("strd r6, r3, [sp, 4]");
0x0000fc80 movs r3, 0 | r3 = 0;
0x0000fc82 str r3, [sp] | *(sp) = r3;
0x0000fc84 movs r3, 6 | r3 = 6;
0x0000fc86 blx 0x7380 | BIO_set_init ();
0x0000fc8a b 0xf692 | goto label_17;
| label_140:
0x0000fc8c ldr r3, [sp, 0x18] | r3 = var_18h;
0x0000fc8e ldr r1, [r6, 0x60] | r1 = *((r6 + 0x60));
0x0000fc90 ldr r2, [r3, 8] | r2 = *((r3 + 8));
0x0000fc92 cmp r2, 0 |
| if (r2 < 0) {
0x0000fc94 blt.w 0xf896 | goto label_39;
| }
0x0000fc98 cmp r1, 0 |
| if (r1 == 0) {
0x0000fc9a beq.w 0xff44 | goto label_197;
| }
0x0000fc9e ldr r3, [r1] | r3 = *(r1);
0x0000fca0 cmp r3, 0 |
| if (r3 == 0) {
0x0000fca2 beq.w 0xf89c | goto label_40;
| }
0x0000fca6 ldrsb r3, [r3, r2] | r3 = *((r3 + r2));
0x0000fca8 cmp r3, 0 |
| if (r3 < 0) {
0x0000fcaa blt.w 0xf89c | goto label_40;
| }
| label_64:
0x0000fcae cmp r3, 5 |
| if (r3 <= 5) {
0x0000fcb0 ble.w 0xf8a4 | goto label_21;
| }
| label_169:
0x0000fcb4 ldr r3, [sp, 0x28] | r3 = var_28h_2;
0x0000fcb6 movw r1, 0x537 | r1 = 0x537;
0x0000fcba ldr r0, [pc, 0x1d0] |
0x0000fcbc str r6, [sp, 4] | var_4h_2 = r6;
0x0000fcbe str r3, [sp, 0xc] | var_ch_3 = r3;
0x0000fcc0 ldr r3, [pc, 0x1cc] |
0x0000fcc2 add r0, pc | r0 = 0x1fb54;
0x0000fcc4 add r3, pc | r3 = 0x1fb58;
0x0000fcc6 str r3, [sp, 8] | var_8h_3 = r3;
0x0000fcc8 movs r3, 0 | r3 = 0;
0x0000fcca str r3, [sp] | *(sp) = r3;
0x0000fccc movs r3, 6 | r3 = 6;
0x0000fcce blx 0x7380 | BIO_set_init ();
0x0000fcd2 cmp.w fp, 0 |
| if (fp != 0) {
0x0000fcd6 bne.w 0xf8ac | goto label_41;
| }
0x0000fcda b 0xf692 | goto label_17;
| if (r1 == 0) {
| label_188:
0x0000fcdc cbnz r1, 0xfce2 |
0x0000fcde ldr r1, [r6, 4] | r1 = *((r6 + 4));
| label_59:
0x0000fce0 adds r1, 0x10 | r1 += 0x10;
| }
| label_190:
0x0000fce2 ldr r3, [r1, 4] | r3 = *((r1 + 4));
0x0000fce4 cmp r3, 5 |
0x0000fce6 ite le |
| if (r3 > 5) {
0x0000fce8 movle r3, 0 | r3 = 0;
| }
| if (r3 <= 5) {
0x0000fcea movgt r3, 1 | r3 = 1;
| }
0x0000fcec b 0xfbb2 | goto label_42;
| if (r1 == 0) {
| label_182:
0x0000fcee cbnz r1, 0xfcf4 |
0x0000fcf0 ldr r1, [r6, 4] | r1 = *((r6 + 4));
| label_60:
0x0000fcf2 adds r1, 0x10 | r1 += 0x10;
| }
| label_184:
0x0000fcf4 ldr r3, [r1, 4] | r3 = *((r1 + 4));
0x0000fcf6 cmp r3, 9 |
0x0000fcf8 ite le |
| if (r3 > 9) {
0x0000fcfa movle r3, 0 | r3 = 0;
| }
| if (r3 <= 9) {
0x0000fcfc movgt r3, 1 | r3 = 1;
| }
0x0000fcfe b 0xfa9c | goto label_43;
| label_153:
0x0000fd00 ldr r3, [pc, 0x190] |
0x0000fd02 movs r4, 0 | r4 = 0;
0x0000fd04 ldr r0, [pc, 0x190] |
0x0000fd06 movw r1, 0x52b | r1 = 0x52b;
0x0000fd0a str r6, [sp, 4] | var_4h_2 = r6;
0x0000fd0c add r3, pc | r3 = 0x1fba4;
0x0000fd0e str r4, [sp] | *(sp) = r4;
0x0000fd10 str r3, [sp, 8] | var_8h_3 = r3;
0x0000fd12 add r0, pc | r0 = 0x1fbae;
0x0000fd14 movs r3, 6 | r3 = 6;
0x0000fd16 blx 0x7380 | BIO_set_init ();
0x0000fd1a ldr r2, [r5, 0x28] | r2 = *((r5 + 0x28));
0x0000fd1c b.w 0xf4fc | goto label_10;
| if (r1 == 0) {
| label_191:
0x0000fd20 cbnz r1, 0xfd26 |
0x0000fd22 ldr r1, [r6, 4] | r1 = *((r6 + 4));
| label_61:
0x0000fd24 adds r1, 0x10 | r1 += 0x10;
| }
| label_193:
0x0000fd26 ldr r3, [r1, 4] | r3 = *((r1 + 4));
0x0000fd28 cmp r3, 6 |
0x0000fd2a ite le |
| if (r3 > 6) {
0x0000fd2c movle r3, 0 | r3 = 0;
| }
| if (r3 <= 6) {
0x0000fd2e movgt r3, 1 | r3 = 1;
| }
0x0000fd30 b 0xfbfa | goto label_44;
| label_150:
0x0000fd32 ldr r1, [sp, 0x24] | r1 = var_24h_2;
0x0000fd34 ldr r0, [r6] | r0 = *(r6);
0x0000fd36 bl 0x1a834 | fcn_0001a834 (r0);
0x0000fd3a ldr r3, [pc, 0x160] |
0x0000fd3c mov r2, sb | r2 = sb;
0x0000fd3e strd r8, r0, [sp, 0xc] | __asm ("strd r8, r0, [sp, 0xc]");
0x0000fd42 movw r1, 0x5c9 | r1 = 0x5c9;
0x0000fd46 ldr r0, [pc, 0x158] |
0x0000fd48 add r3, pc | r3 = 0x1fbea;
0x0000fd4a str r5, [sp] | *(sp) = r5;
0x0000fd4c str r3, [sp, 8] | var_8h_3 = r3;
0x0000fd4e movs r3, 6 | r3 = 6;
0x0000fd50 add r0, pc | r0 = 0x1fbf6;
0x0000fd52 str r6, [sp, 4] | var_4h_2 = r6;
0x0000fd54 blx 0x7380 | BIO_set_init ();
0x0000fd58 b 0xf604 | goto label_45;
| label_133:
0x0000fd5a ldr r1, [r6, 4] | r1 = *((r6 + 4));
0x0000fd5c ldr r3, [r1, 0x10] | r3 = *((r1 + 0x10));
| if (r3 == 0) {
0x0000fd5e cbz r3, 0xfd68 | goto label_52;
| }
0x0000fd60 ldrsb r3, [r3, r2] | r3 = *((r3 + r2));
0x0000fd62 cmp r3, 0 |
| if (r3 >= 0) {
0x0000fd64 bge.w 0xf424 | goto label_46;
| }
| label_52:
0x0000fd68 adds r1, 0x10 | r1 += 0x10;
0x0000fd6a b 0xf88a | goto label_47;
| label_156:
0x0000fd6c ldr.w ip, [r4, 0x14] | ip = *((r4 + 0x14));
0x0000fd70 cmp.w ip, 0 |
| if (ip != 0) {
0x0000fd74 bne.w 0xf402 | goto label_48;
| }
0x0000fd78 blx 0x7cec | r0 = X509V3_EXT_print ();
0x0000fd7c mov ip, r0 |
0x0000fd7e b.w 0xf402 | goto label_48;
| label_181:
0x0000fd82 ldr r3, [sp, 0x28] | r3 = var_28h_2;
0x0000fd84 mov.w r1, 0x510 | r1 = 0x510;
0x0000fd88 str r0, [sp] | *(sp) = r0;
0x0000fd8a str r6, [sp, 4] | var_4h_2 = r6;
0x0000fd8c str r3, [sp, 0xc] | var_ch_3 = r3;
0x0000fd8e ldr r3, [sp, 0x18] | r3 = var_18h;
0x0000fd90 ldr r4, [pc, 0x110] |
0x0000fd92 ldr r3, [r3, 8] | r3 = *((r3 + 8));
0x0000fd94 add r4, pc | r4 = 0x1fc3c;
0x0000fd96 mov r0, r4 | r0 = r4;
0x0000fd98 mov r2, r3 | r2 = r3;
0x0000fd9a str r3, [sp, 0x1c] | var_1ch_2 = r3;
0x0000fd9c ldr r3, [pc, 0x108] |
0x0000fd9e add r3, pc | r3 = 0x1fc4a;
0x0000fda0 str r3, [sp, 8] | var_8h_3 = r3;
0x0000fda2 movs r3, 4 | r3 = 4;
0x0000fda4 blx 0x7380 | BIO_set_init ();
0x0000fda8 ldr r3, [sp, 0x24] | r3 = var_24h_2;
0x0000fdaa mov r0, r4 | r0 = r4;
0x0000fdac movs r2, 4 | r2 = 4;
0x0000fdae movw r1, 0x513 | r1 = 0x513;
0x0000fdb2 bl 0x14f78 | fcn_00014f78 (r0, r1, r2, r3, r4);
0x0000fdb6 b.w 0xf4b6 | goto label_26;
| label_134:
0x0000fdba ldr.w ip, [pc, 0xf0] |
0x0000fdbe add ip, pc | ip = 0x1fc70;
0x0000fdc0 b.w 0xf436 | goto label_49;
| label_152:
0x0000fdc4 ldr r1, [r6, 4] | r1 = *((r6 + 4));
0x0000fdc6 ldr r3, [r1, 0x10] | r3 = *((r1 + 0x10));
| if (r3 == 0) {
0x0000fdc8 cbz r3, 0xfdd2 | goto label_56;
| }
0x0000fdca ldrsb r4, [r3, r2] | r4 = *((r3 + r2));
0x0000fdcc cmp r4, 0 |
| if (r4 >= 0) {
0x0000fdce bge.w 0xf652 | goto label_50;
| }
| label_56:
0x0000fdd2 adds r1, 0x10 | r1 += 0x10;
0x0000fdd4 b 0xf972 | goto label_51;
| label_168:
0x0000fdd6 ldr r1, [r6, 4] | r1 = *((r6 + 4));
0x0000fdd8 b 0xfd68 | goto label_52;
| label_149:
0x0000feb0 ldr r1, [r6, 4] | r1 = *((r6 + 4));
0x0000feb2 ldr r3, [r1, 0x10] | r3 = *((r1 + 0x10));
| if (r3 == 0) {
0x0000feb4 cbz r3, 0xfec0 | goto label_58;
| }
0x0000feb6 ldrsb.w r3, [r3, sb] | r3 = *((r3 + sb));
0x0000feba cmp r3, 0 |
| if (r3 >= 0) {
0x0000febc bge.w 0xf5f6 | goto label_53;
| }
| label_58:
0x0000fec0 adds r1, 0x10 | r1 += 0x10;
0x0000fec2 b 0xf984 | goto label_54;
| if (r1 == 0) {
| label_194:
0x0000fec4 cbnz r1, 0xfeca |
0x0000fec6 ldr r1, [r6, 4] | r1 = *((r6 + 4));
| label_69:
0x0000fec8 adds r1, 0x10 | r1 += 0x10;
| }
| label_196:
0x0000feca ldr r3, [r1, 4] | r3 = *((r1 + 4));
0x0000fecc cmp r3, 5 |
0x0000fece ite le |
| if (r3 > 5) {
0x0000fed0 movle r3, 0 | r3 = 0;
| }
| if (r3 <= 5) {
0x0000fed2 movgt r3, 1 | r3 = 1;
| }
0x0000fed4 b 0xfc66 | goto label_55;
| label_175:
0x0000fed6 ldr r1, [r6, 4] | r1 = *((r6 + 4));
0x0000fed8 b 0xfdd2 | goto label_56;
| if (r1 == 0) {
| label_178:
0x0000feda cbnz r1, 0xfee0 |
0x0000fedc ldr r1, [r6, 4] | r1 = *((r6 + 4));
| label_74:
0x0000fede adds r1, 0x10 | r1 += 0x10;
| }
| label_180:
0x0000fee0 ldr r3, [r1, 4] | r3 = *((r1 + 4));
0x0000fee2 cmp r3, 5 |
0x0000fee4 ite le |
| if (r3 > 5) {
0x0000fee6 movle r3, 0 | r3 = 0;
| }
| if (r3 <= 5) {
0x0000fee8 movgt r3, 1 | r3 = 1;
| }
0x0000feea cmp r3, 0 |
| if (r3 == 0) {
0x0000feec beq.w 0xf8a4 | goto label_21;
| }
0x0000fef0 b 0xfa02 | goto label_57;
| label_176:
0x0000fef2 ldr r1, [r6, 4] | r1 = *((r6 + 4));
0x0000fef4 b 0xfec0 | goto label_58;
| label_172:
0x0000fef6 ldrd r6, r4, [sp, 0x1c] | __asm ("ldrd r6, r4, [var_1ch_2]");
0x0000fefa mov r7, fp | r7 = fp;
0x0000fefc cmp r4, 0 |
| if (r4 == 0) {
0x0000fefe beq.w 0xf692 | goto label_17;
| }
0x0000ff02 b.w 0xf552 | goto label_12;
| label_189:
0x0000ff06 ldr r1, [r6, 4] | r1 = *((r6 + 4));
0x0000ff08 ldr r3, [r1, 0x10] | r3 = *((r1 + 0x10));
0x0000ff0a cmp r3, 0 |
| if (r3 == 0) {
0x0000ff0c beq.w 0xfce0 | goto label_59;
| }
0x0000ff10 ldrsb r3, [r3, r2] | r3 = *((r3 + r2));
0x0000ff12 cmp r3, 0 |
0x0000ff14 bl 0xffecfdaa | void (*0xffecfdaa)(uint32_t) (r3);
0x0000ff16 invalid |
0x0000ff18 invalid |
| label_183:
0x0000ff1a ldr r7, [r7, 0xc] | r7 = *((r7 + 0xc));
0x0000ff1c ldr r3, [r1, 0x10] | r3 = *((r1 + 0x10));
0x0000ff1e cmp r3, 0 |
| if (r3 == 0) {
0x0000ff20 beq.w 0xfcf2 | goto label_60;
| }
0x0000ff24 ldrsb r3, [r3, r2] | r3 = *((r3 + r2));
0x0000ff26 movs r0, r0 |
0x0000ff28 movs r0, r0 |
0x0000ff2a invalid |
0x0000ff2c lsls r6, r7, 3 | r6 = r7 << 3;
| label_192:
0x0000ff2e invalid |
0x0000ff32 cmp r3, 0xff |
| if (r3 == 0xff) {
0x0000ff34 beq.w 0xfd24 | goto label_61;
| }
0x0000ff38 ldrsb.w r3, [r3, sb] | r3 = *((r3 + sb));
0x0000ff3c cmp r3, 0 |
| if (r3 >= 0) {
0x0000ff3e bge.w 0xfbf2 | goto label_62;
| }
0x0000ff40 add r6, sp, 0x160 | r6 = sp + 0x160;
0x0000ff42 b 0xfd24 | goto label_61;
| label_197:
0x0000ff44 ldr r1, [r6, 4] | r1 = *((r6 + 4));
0x0000ff46 ldr r3, [r1, 0x10] | r3 = *((r1 + 0x10));
0x0000ff48 cmp r3, 0 |
| if (r3 == 0) {
0x0000ff4a beq.w 0xf89a | goto label_63;
| }
0x0000ff4e ldrsb r3, [r3, r2] | r3 = *((r3 + r2));
0x0000ff50 cmp r3, 0 |
| if (r3 >= 0) {
0x0000ff52 bge.w 0xfcae | goto label_64;
| }
0x0000ff56 b 0xf89a | goto label_63;
| label_174:
0x0000ff58 ldr r1, [r6, 4] | r1 = *((r6 + 4));
0x0000ff5a ldr r3, [r1, 0x10] | r3 = *((r1 + 0x10));
| if (r3 == 0) {
0x0000ff5c cbz r3, 0xff66 | goto label_77;
| }
0x0000ff5e ldrsb r3, [r3, r2] | r3 = *((r3 + r2));
0x0000ff60 cmp r3, 0 |
| if (r3 >= 0) {
0x0000ff62 bge.w 0xf938 | goto label_65;
| }
| label_77:
0x0000ff66 adds r1, 0x10 | r1 += 0x10;
| label_76:
0x0000ff68 ldr r3, [r1, 4] | r3 = *((r1 + 4));
0x0000ff6a cmp r3, 5 |
0x0000ff6c ite le |
| if (r3 > 5) {
0x0000ff6e movle r3, 0 | r3 = 0;
| }
| if (r3 <= 5) {
0x0000ff70 movgt r3, 1 | r3 = 1;
| }
0x0000ff72 b 0xf940 | goto label_66;
| label_186:
0x0000ff74 ldr r1, [r6, 4] | r1 = *((r6 + 4));
0x0000ff76 ldr r3, [r1, 0x10] | r3 = *((r1 + 0x10));
| if (r3 == 0) {
0x0000ff78 cbz r3, 0xff82 | goto label_73;
| }
0x0000ff7a ldrsb r3, [r3, r2] | r3 = *((r3 + r2));
0x0000ff7c cmp r3, 0 |
| if (r3 >= 0) {
0x0000ff7e bge.w 0xfb10 | goto label_67;
| }
| label_73:
0x0000ff82 adds r1, 0x10 | r1 += 0x10;
| label_72:
0x0000ff84 lsls r3, r1, 1 | r3 = r1 << 1;
0x0000ff86 cmp r3, 0x3a |
0x0000ff88 ite le |
| if (r3 > 0x3a) {
0x0000ff8a movle r3, 0 | r3 = 0;
| }
| if (r3 <= 0x3a) {
0x0000ff8c movgt r3, 1 | r3 = 1;
| }
0x0000ff8e b 0xfb18 | goto label_68;
| label_195:
0x0000ff90 ldr r1, [r6, 4] | r1 = *((r6 + 4));
0x0000ff92 ldr r3, [r1, 0x10] | r3 = *((r1 + 0x10));
0x0000ff94 cmp r3, 0 |
| if (r3 == 0) {
0x0000ff96 beq 0xfec8 | goto label_69;
| }
0x0000ff98 ldrsb r3, [r3, r2] | r3 = *((r3 + r2));
0x0000ff9a cmp r3, 0 |
| if (r3 >= 0) {
0x0000ff9c bge.w 0xfc5e | goto label_70;
| }
0x0000ffa0 b 0xfec8 | goto label_69;
| label_187:
0x0000ffa2 ldr r1, [pc, 0x44] |
0x0000ffa4 movs r3, 0 | r3 = 0;
0x0000ffa6 ldr r0, [pc, 0x44] |
0x0000ffa8 strd r3, r6, [sp] | __asm ("strd r3, r6, [sp]");
0x0000ffac movs r3, 6 | r3 = 6;
0x0000ffae add r1, pc | r1 = 0x1ff9c;
0x0000ffb0 str r1, [sp, 8] | var_8h_3 = r1;
0x0000ffb2 add r0, pc | r0 = 0x1ffa4;
0x0000ffb4 movw r1, 0x614 | r1 = 0x614;
0x0000ffb8 blx 0x7380 | BIO_set_init ();
0x0000ffbc b 0xfb1e | goto label_71;
| label_185:
0x0000ffbe cmp r1, 0 |
| if (r1 != 0) {
0x0000ffc0 bne 0xff84 | goto label_72;
| }
0x0000ffc2 ldr r1, [r6, 4] | r1 = *((r6 + 4));
0x0000ffc4 b 0xff82 | goto label_73;
| label_179:
0x0000ffc6 ldr r1, [r6, 4] | r1 = *((r6 + 4));
0x0000ffc8 ldr r3, [r1, 0x10] | r3 = *((r1 + 0x10));
0x0000ffca cmp r3, 0 |
| if (r3 == 0) {
0x0000ffcc beq 0xfede | goto label_74;
| }
0x0000ffce ldrsb r3, [r3, r2] | r3 = *((r3 + r2));
0x0000ffd0 cmp r3, 0 |
| if (r3 >= 0) {
0x0000ffd2 bge.w 0xf9f4 | goto label_75;
| }
0x0000ffd6 b 0xfede | goto label_74;
| label_173:
0x0000ffd8 ldr r1, [r6, 0x60] | r1 = *((r6 + 0x60));
0x0000ffda cmp r1, 0 |
| if (r1 != 0) {
0x0000ffdc bne 0xff68 | goto label_76;
| }
0x0000ffde ldr r1, [r6, 4] | r1 = *((r6 + 4));
0x0000ffe0 b 0xff66 | goto label_77;
| label_135:
0x0000ffe2 blx 0x7428 | BIO_push ();
0x0000ffe6 nop |
0x0000ffe8 asrs r6, r0, 3 | r6 = r0 >> 3;
0x0000ffea movs r1, r0 | r1 = r0;
0x0000ffec lsls r6, r3, 0x16 | r6 = r3 << 0x16;
0x0000ffee movs r1, r0 | r1 = r0;
0x0000fff0 push.w {r4, r5, r6, r7, r8, sb, sl, fp, lr} |
0x0000fff4 mov fp, r0 |
0x0000fff6 ldr r3, [r0, 4] | r3 = *((r0 + 4));
0x0000fff8 sub sp, 0x4c |
0x0000fffa mov r6, r1 | r6 = r1;
0x0000fffc ldr.w r1, [pc, 4] | r1 = *(0x00010004);
0x00010000 asrs r0, r0, 0x1c | r0 >>= 0x1c;
0x00010002 lsls r0, r0, 0xc | r0 <<= 0xc;
0x00010004 lsls r0, r0, 4 | r0 <<= 4;
0x00010006 add r0, r0 | r0 += r0;
0x00010008 asrs r2, r0, 0x1e | r2 = r0 >> 0x1e;
0x0001000a lsls r0, r0, 0x1c | r0 <<= 0x1c;
0x0001000c lsls r7, r7, 7 | r7 <<= 7;
0x0001000e invalid |
0x00010012 lsls r2, r5, 1 | r2 = r5 << 1;
0x00010014 lsls r7, r7, 3 | r7 <<= 3;
0x00010016 vabd.u8 d1, d16, d2 | __asm ("vabd.u8 d1, d16, d2");
0x0001001a invalid |
0x0001001e lsrs r2, r5, 0x11 | r2 = r5 >> 0x11;
0x00010020 movs r1, r0 | r1 = r0;
0x00010022 movs r3, 0 | r3 = 0;
0x00010024 lsls r0, r0, 4 | r0 <<= 4;
0x00010026 invalid |
0x00010028 lsls r5, r0, 9 | r5 = r0 << 9;
0x0001002a lsls r2, r5, 1 | r2 = r5 << 1;
0x0001002c movs r0, r0 |
0x0001002e cmp r7, 0 |
0x00010030 lsls r0, r0, 4 | r0 <<= 4;
0x00010032 vcge.f32 d15, d0, d1 | __asm ("vcge.f32 d15, d0, d1");
0x00010036 lsls r7, r7, 3 | r7 <<= 3;
0x00010038 lsls r0, r0, 8 | r0 <<= 8;
0x0001003a movs r2, r7 | r2 = r7;
0x0001003c movs r0, r0 |
0x0001003e add r0, r0 | r0 += r0;
0x00010040 asrs r2, r0, 0x1e | r2 = r0 >> 0x1e;
0x00010042 movs r0, r0 |
0x00010044 movs r0, r0 |
0x00010046 movs r0, r0 |
0x00010048 movs r0, r0 |
0x0001004a ldr r3, [pc, 0] | r3 = *(0x0001004c);
0x0001004c lsls r0, r0, 4 | r0 <<= 4;
0x0001004e invalid |
0x00010052 lsrs r2, r5, 0xd | r2 = r5 >> 0xd;
0x00010054 vshl.u8 d4, d0, d7 | __asm ("vshl.u8 d4, d0, d7");
0x00010058 asrs r2, r0, 0x1e | r2 = r0 >> 0x1e;
0x0001005a invalid |
0x0001005e lsls r2, r5, 1 | r2 = r5 << 1;
0x00010060 movs r0, r0 |
0x00010062 invalid |
0x00010066 lsls r7, r7, 3 | r7 <<= 3;
0x00010068 movs r0, r0 |
0x0001006a ldrb r0, [r0] | r0 = *(r0);
0x0001006c asrs r2, r0, 0x1e | r2 = r0 >> 0x1e;
0x0001006e ldr r0, [r0, 0x30] | r0 = *((r0 + 0x30));
0x00010070 lsls r0, r0, 4 | r0 <<= 4;
0x00010072 movs r0, r0 |
0x00010074 movs r0, r0 |
0x00010076 movs r7, 0 | r7 = 0;
0x00010078 str r3, [sp, 0x2c] | var_2ch = r3;
0x0001007a str.w lr, [sp, 0x1c] | __asm ("str.w lr, [var_1ch]");
0x0001007e str.w ip, [sp, 0x34] | __asm ("str.w ip, [var_34h]");
0x00010080 stm r0!, {r2, r4, r5} | *(r0!) = r2;
| *((r0! + 4)) = r4;
| *((r0! + 8)) = r5;
0x00010082 b 0x100ea |
| while (r5 != 0) {
0x00010084 ldr.w r2, [pc, 0x488] | r2 = *(0x10510);
0x00010088 ldr.w r2, [sl, r2] | r2 = *((sl + r2));
0x0001008c cmp r3, r2 |
| if (r3 == r2) {
0x0001008e beq.w 0x10308 | goto label_198;
| }
| label_86:
0x00010092 ldr r3, [r4, 4] | r3 = *((r4 + 4));
0x00010094 ldr r2, [r4] | r2 = *(r4);
0x00010096 invalid |
0x0001009a str r2, [r3] | *(r3) = r2;
0x0001009c ldr r3, [sp, 0x18] | r3 = var_18h_2;
0x0001009e ldr r1, [r3, 8] | r1 = *((r3 + 8));
0x000100a0 ldr r3, [r4] | r3 = *(r4);
0x000100a2 ldr r2, [r4, 4] | r2 = *((r4 + 4));
0x000100a4 str r2, [r3, 4] | *((r3 + 4)) = r2;
0x000100a6 adds r3, r1, 4 | r3 = r1 + 4;
0x000100a8 str r3, [r4, 4] | *((r4 + 4)) = r3;
0x000100aa ldr r3, [r1, 4] | r3 = *((r1 + 4));
0x000100ac str r3, [r4] | *(r4) = r3;
0x000100ae ldr r3, [r1, 4] | r3 = *((r1 + 4));
0x000100b0 str r4, [r3, 4] | *((r3 + 4)) = r4;
0x000100b2 str r4, [r1, 4] | *((r1 + 4)) = r4;
0x000100b4 blx 0x7450 | r0 = fcn_00007450 ();
0x000100b8 mov r8, r0 | r8 = r0;
0x000100ba cmp r0, 0 |
| if (r0 != 0) {
0x000100bc bne 0x101ba | goto label_199;
| }
0x000100be ldr.w r3, [fp, 0x10] | r3 = *(arg_10h);
0x000100c2 ldr r3, [r3, 0x54] | r3 = *((r3 + 0x54));
0x000100c4 cmp r3, 0 |
0x000100c6 itte ne |
| if (r3 == 0) {
0x000100c8 movne r8, 0x68 | r8 = 0x68;
| }
| if (r3 != 0) {
0x000100cc moveq r5, 0 | r5 = 0;
| }
| if (r3 == 0) {
0x000100ce movs r5, 1 | r5 = 1;
| }
| label_79:
0x000100d0 ldr r3, [sp, 0x18] | r3 = var_18h_2;
0x000100d2 ldr r0, [r3, 8] | r0 = *((r3 + 8));
0x000100d4 blx 0x68a0 | UI_method_set_closer ();
| label_78:
0x000100d8 ldr r3, [r6, 4] | r3 = *((r6 + 4));
0x000100da ldr r2, [sp, 0x1c] | r2 = var_1ch;
0x000100dc cmp r3, r2 |
0x000100de ite eq |
| if (r3 != r2) {
0x000100e0 moveq r5, 0 | r5 = 0;
| }
| if (r3 == r2) {
0x000100e2 andne r5, r5, 1 | r5 &= 1;
| }
0x000100e6 cmp r5, 0 |
| if (r5 == 0) {
0x000100e8 beq 0x101d2 | goto label_92;
| }
0x000100ea ldr r4, [r6, 4] | r4 = *((r6 + 4));
0x000100ec ldr r3, [r4, 8] | r3 = *((r4 + 8));
0x000100ee ldr r5, [r3, 8] | r5 = *((r3 + 8));
0x000100f0 cmp r5, 0 |
0x000100f2 bne 0x10084 |
| }
0x000100f4 ldr.w r8, [r3, 0x10] | r8 = *((r3 + 0x10));
0x000100f8 mov r0, r4 | r0 = r4;
0x000100fa ldrd r2, r1, [sp, 0x28] | __asm ("ldrd r2, r1, [var_28h]");
0x000100fe invalid |
0x00010102 cmp r0, 0xb |
0x00010104 mov r8, r0 | r8 = r0;
| if (r0 == 0xb) {
0x00010106 beq 0x101be | goto label_200;
| }
0x00010108 ldr r3, [sp, 0x34] | r3 = var_34h;
0x0001010a cmp r0, r3 |
0x0001010c it ne |
| if (r0 != r3) {
0x0001010e cmpne r0, 0 | __asm ("cmpne r0, 0");
| }
0x00010110 ite ne |
| if (r0 == r3) {
0x00010112 movne r5, 1 | r5 = 1;
| }
| if (r0 != r3) {
0x00010114 moveq r5, 0 | r5 = 0;
| }
| if (r0 != r3) {
0x00010116 bne 0x101d2 | goto label_92;
| }
0x00010118 ldr.w sb, [fp, 4] | sb = *(arg_4h);
0x0001011c ldr.w r3, [sb] | r3 = *(sb);
0x00010120 cmp r3, 0 |
| if (r3 == 0) {
0x00010122 beq.w 0x103ba | goto label_201;
| }
0x00010126 ldr r3, [pc, 0x3ec] | r3 = *(0x10516);
0x00010128 ldr.w r0, [fp, 0x10] | r0 = *(arg_10h);
0x0001012c ldr.w r3, [sl, r3] | r3 = *((sl + r3));
0x00010130 ldr r1, [r0, 0x60] | r1 = *((r0 + 0x60));
0x00010132 ldr r2, [r3, 8] | r2 = *(0x1051e);
0x00010134 str r3, [sp, 0x30] | var_30h = r3;
0x00010136 cmp r2, 0 |
| if (r2 >= 0) {
0x00010138 blt 0x10154 |
0x0001013a cmp r1, 0 |
| if (r1 == 0) {
0x0001013c beq.w 0x10316 | goto label_202;
| }
0x00010140 ldr r3, [r1] | r3 = *(r1);
| if (r3 != 0) {
0x00010142 cbz r3, 0x1015a |
0x00010144 ldrsb r3, [r3, r2] | r3 = *((r3 + r2));
0x00010146 cmp r3, 0 |
| if (r3 < 0) {
0x00010148 blt 0x1015a | goto label_83;
| }
| label_88:
0x0001014a cmp r3, 0xc |
0x0001014c ite le |
| if (r3 > 0xc) {
0x0001014e movle r3, 0 | r3 = 0;
| }
| if (r3 <= 0xc) {
0x00010150 movgt r3, 1 | r3 = 1;
| }
0x00010152 b 0x10164 |
| } else {
0x00010154 cmp r1, 0 |
| if (r1 == 0) {
0x00010156 beq.w 0x1027e | goto label_203;
| }
| }
| label_83:
0x0001015a ldr r3, [r1, 4] | r3 = *((r1 + 4));
0x0001015c cmp r3, 0xc |
0x0001015e ite le |
| if (r3 > 0xc) {
0x00010160 movle r3, 0 | r3 = 0;
| }
| if (r3 > 0xc) {
0x00010162 movgt r3, 1 | r3 = 1;
| goto label_204;
| }
| }
| label_204:
0x00010164 ldrd r8, r7, [sp, 0x3c] | __asm ("ldrd r8, r7, [var_3ch]");
0x00010168 cmp r3, 0 |
| if (r3 != 0) {
0x0001016a bne 0x1023e | goto label_205;
| }
| label_80:
0x0001016c blx 0x680c | fcn_0000680c ();
0x00010170 ldr.w r0, [sb, 8] | r0 = *((sb + 8));
0x00010174 blx 0x6d20 | PEM_read_bio_X509 ();
0x00010178 mov r1, r8 | r1 = r8;
0x0001017a str r0, [sp, 0x20] | var_20h = r0;
0x0001017c mov r2, r7 | r2 = r7;
0x0001017e ldr.w r0, [sb] | r0 = *(sb);
0x00010182 blx 0x7a08 | r0 = fcn_00007a08 ();
0x00010186 subs.w r8, r0, 0 | r8 = r0 - 0;
| if (r8 < r0) {
0x0001018a blt 0x10284 | goto label_206;
| }
0x0001018c cmp r7, r8 |
| if (r7 != r8) {
0x0001018e bne 0x101f0 | goto label_207;
| }
0x00010190 ldr r3, [sp, 0x20] | r3 = var_20h;
0x00010192 ldr.w r8, [r3, 0xc] | r8 = *((r3 + 0xc));
0x00010196 clz r5, r8 | r5 &= r8;
0x0001019a lsrs r5, r5, 5 | r5 >>= 5;
| do {
| label_85:
0x0001019c ldr r3, [r4, 4] | r3 = *((r4 + 4));
0x0001019e movs r7, 1 | r7 = 1;
0x000101a0 ldr r2, [r4] | r2 = *(r4);
0x000101a2 ldr r0, [r4, 0x18] | r0 = *((r4 + 0x18));
0x000101a4 str r2, [r3] | *(r3) = r2;
0x000101a6 ldr r3, [r4, 8] | r3 = *((r4 + 8));
0x000101a8 ldr r2, [r4] | r2 = *(r4);
0x000101aa ldr r1, [r4, 4] | r1 = *((r4 + 4));
0x000101ac ldr r3, [r3, 0xc] | r3 = *((r3 + 0xc));
0x000101ae str r1, [r2, 4] | *((r2 + 4)) = r1;
0x000101b0 blx r3 | uint32_t (*r3)(uint32_t, uint32_t, uint32_t, uint32_t) (r0, r1, r2, r3);
0x000101b2 ldr r3, [r4, 0x1c] | r3 = *((r4 + 0x1c));
0x000101b4 mov r0, r4 | r0 = r4;
0x000101b6 blx r3 | uint32_t (*r3)(uint32_t, uint32_t) (r0, r3);
0x000101b8 b 0x100d8 | goto label_78;
| label_199:
0x000101ba movs r5, 0 | r5 = 0;
0x000101bc b 0x100d0 | goto label_79;
| label_200:
0x000101be ldr r3, [sp, 0x24] | r3 = var_24h;
0x000101c0 ldr r0, [r3, 8] | r0 = *((r3 + 8));
0x000101c2 bl 0xf0bc | r0 = fcn_0000f0bc ();
0x000101c6 cmp r0, 0 |
| if (r0 >= 0) {
0x000101c8 bge.w 0x10388 | goto label_208;
| }
0x000101cc ldr r3, [sp, 0x18] | r3 = var_18h_2;
0x000101ce ldr.w r8, [r3, 0xc] | r8 = *((r3 + 0xc));
| label_92:
0x000101d2 ldr r2, [pc, 0x344] |
0x000101d4 ldr r3, [pc, 0x330] | r3 = *(0x10508);
0x000101d6 add r2, pc | r2 = "AH10233: coalesce: failed to split data bucket";
0x000101d8 ldr r3, [r2, r3] | r3 = "AH10233: coalesce: failed to split data bucket";
0x000101da ldr r2, [r3] | r2 = "AH10233: coalesce: failed to split data bucket";
0x000101dc ldr r3, [sp, 0x44] | r3 = var_44h;
0x000101de eors r2, r3 | r2 ^= r3;
0x000101e0 mov.w r3, 0 | r3 = 0;
| if (r2 != r3) {
0x000101e4 bne.w 0x104fe | goto label_209;
| }
0x000101e8 mov r0, r8 | r0 = r8;
0x000101ea add sp, 0x4c |
0x000101ec pop.w {r4, r5, r6, r7, r8, sb, sl, fp, pc} |
| label_207:
0x000101f0 movs r3, 0 | r3 = 0;
0x000101f2 ldr.w r0, [sb] | r0 = *(sb);
0x000101f6 mov r2, r3 | r2 = r3;
0x000101f8 movs r1, 0xc | r1 = 0xc;
0x000101fa ldr.w sb, [fp, 0x10] | sb = *(arg_10h);
0x000101fe blx 0x7308 | r0 = loc_imp_apr_time_exp_lt ();
| if (r0 != 0) {
0x00010202 cbnz r0, 0x1025c | goto label_210;
| }
0x00010204 ldr r3, [sp, 0x30] | r3 = var_30h;
0x00010206 ldr r0, [pc, 0x314] |
0x00010208 ldr.w r1, [sb, 0x60] | r1 = *((sb + 0x60));
0x0001020c ldr r2, [r3, 8] | r2 = *((r3 + 8));
0x0001020e add r0, pc | r0 = 0x20730;
0x00010210 cmp r2, 0 |
| if (r2 < 0) {
0x00010212 blt 0x1026c | goto label_211;
| }
| label_81:
0x00010214 cmp r1, 0 |
| if (r1 == 0) {
0x00010216 beq.w 0x10424 | goto label_212;
| }
0x0001021a ldr r3, [r1] | r3 = *(r1);
| if (r3 == 0) {
0x0001021c cbz r3, 0x10272 | goto label_90;
| }
0x0001021e ldrsb r3, [r3, r2] | r3 = *((r3 + r2));
0x00010220 cmp r3, 0 |
| if (r3 < 0) {
0x00010222 blt 0x10272 | goto label_90;
| }
| label_93:
0x00010224 cmp r3, 5 |
0x00010226 ite le |
| if (r3 > 5) {
0x00010228 movle r3, 0 | r3 = 0;
| }
| if (r3 <= 5) {
0x0001022a movgt r3, 1 | r3 = 1;
| }
| label_82:
0x0001022c cmp r3, 0 |
| if (r3 != 0) {
0x0001022e bne.w 0x10390 | goto label_213;
| }
| label_84:
0x00010232 ldr r2, [sp, 0x20] | r2 = var_20h;
0x00010234 movw r3, 0x4e2e | r3 = 0x4e2e;
0x00010238 mov r8, r3 | r8 = r3;
0x0001023a str r3, [r2, 0xc] | *((r2 + 0xc)) = r3;
0x0001023c b 0x1019c |
| } while (1);
| label_205:
0x0001023e ldr r3, [pc, 0x2e0] |
0x00010240 movw r1, 0x37b | r1 = 0x37b;
0x00010244 str r0, [sp, 4] | var_44h_2 = r0;
0x00010246 ldr r0, [pc, 0x2dc] |
0x00010248 add r3, pc | r3 = 0x2076e;
0x0001024a str r7, [sp, 0xc] | var_ch_2 = r7;
0x0001024c str r3, [sp, 8] | var_8h_2 = r3;
0x0001024e movs r3, 0 | r3 = 0;
0x00010250 str r3, [sp] | *(sp) = r3;
0x00010252 add r0, pc | r0 = 0x2077c;
0x00010254 movs r3, 0xd | r3 = 0xd;
0x00010256 blx 0x7380 | BIO_set_init ();
0x0001025a b 0x1016c | goto label_80;
| label_210:
0x0001025c ldr r3, [sp, 0x30] | r3 = var_30h;
0x0001025e ldr r0, [pc, 0x2c8] |
0x00010260 ldr.w r1, [sb, 0x60] | r1 = *((sb + 0x60));
0x00010264 ldr r2, [r3, 8] | r2 = *((r3 + 8));
0x00010266 add r0, pc | r0 = 0x20794;
0x00010268 cmp r2, 0 |
| if (r2 >= 0) {
0x0001026a bge 0x10214 | goto label_81;
| }
| label_211:
0x0001026c cmp r1, 0 |
| if (r1 == 0) {
0x0001026e beq.w 0x10380 | goto label_214;
| }
| label_90:
0x00010272 ldr r3, [r1, 4] | r3 = *((r1 + 4));
0x00010274 cmp r3, 5 |
0x00010276 ite le |
| if (r3 > 5) {
0x00010278 movle r3, 0 | r3 = 0;
| }
| if (r3 <= 5) {
0x0001027a movgt r3, 1 | r3 = 1;
| }
0x0001027c b 0x1022c | goto label_82;
| label_203:
0x0001027e ldr r1, [r0, 4] | r1 = *((r0 + 4));
| label_87:
0x00010280 adds r1, 0x10 | r1 += 0x10;
0x00010282 b 0x1015a | goto label_83;
| label_206:
0x00010284 mov r1, r8 | r1 = r8;
0x00010286 ldr.w r0, [sb] | r0 = *(sb);
0x0001028a blx 0x6d5c | loc_imp_apr_psprintf ()
0x0001028e ldr r3, [sp, 0x20] | r3 = var_20h;
0x00010290 mov r8, r0 | r8 = r0;
0x00010292 movs r1, 0 | r1 = 0;
0x00010294 ldr r3, [r3] | r3 = *(r3);
0x00010296 ldr r0, [r3] | r0 = *(r3);
0x00010298 blx 0x7830 | SSL_CTX_check_private_key ();
0x0001029c cmp.w r8, 3 |
0x000102a0 mov r7, r0 | r7 = r0;
| if (r8 == 3) {
0x000102a2 beq.w 0x1040c | goto label_215;
| }
0x000102a6 ldr r3, [sp, 0x30] | r3 = var_30h;
0x000102a8 cmp.w r8, 2 |
0x000102ac ldr r2, [r3, 8] | r2 = *((r3 + 8));
| if (r8 == 2) {
0x000102ae beq 0x10328 | goto label_216;
| }
0x000102b0 cmp.w r8, 5 |
0x000102b4 ldr r1, [r0, 0x60] | r1 = *((r0 + 0x60));
| if (r8 == 5) {
0x000102b6 beq.w 0x10438 | goto label_217;
| }
0x000102ba cmp r2, 0 |
| if (r2 < 0) {
0x000102bc blt.w 0x104b4 | goto label_218;
| }
0x000102c0 cmp r1, 0 |
| if (r1 == 0) {
0x000102c2 beq.w 0x1047c | goto label_219;
| }
0x000102c6 ldr r3, [r1] | r3 = *(r1);
0x000102c8 cmp r3, 0 |
| if (r3 == 0) {
0x000102ca beq.w 0x1048c | goto label_100;
| }
0x000102ce ldrsb r3, [r3, r2] | r3 = *((r3 + r2));
0x000102d0 cmp r3, 0 |
| if (r3 < 0) {
0x000102d2 blt.w 0x1048c | goto label_100;
| }
| label_96:
0x000102d6 cmp r3, 5 |
0x000102d8 ite le |
| if (r3 > 5) {
0x000102da movle r3, 0 | r3 = 0;
| }
| if (r3 <= 5) {
0x000102dc movgt r3, 1 | r3 = 1;
| }
| label_97:
0x000102de cmp r3, 0 |
| if (r3 != 0) {
0x000102e0 bne.w 0x104bc | goto label_220;
| }
| label_102:
0x000102e4 ldr r3, [r7, 0x2c] | r3 = *((r7 + 0x2c));
0x000102e6 movw r1, 0x3ad | r1 = 0x3ad;
0x000102ea ldr r0, [pc, 0x240] |
0x000102ec ldr.w r3, [r3, r2, lsl 2] | offset_2 = r2 << 2;
| r3 = *((r3 + offset_2));
0x000102f0 movs r2, 6 | r2 = 6;
0x000102f2 add r0, pc | r0 = 0x20824;
0x000102f4 ldr r3, [r3, 0x28] | r3 = *((r3 + 0x28));
0x000102f6 bl 0x14f78 | fcn_00014f78 (r0, r1, r2, r3, r4);
| label_89:
0x000102fa ldr r3, [sp, 0x20] | r3 = var_20h;
0x000102fc ldr.w r8, [r3, 0xc] | r8 = *((r3 + 0xc));
0x000102fe strh r4, [r1] | *(r1) = r4;
0x00010300 cmp.w r8, 0 |
| if (r8 == 0) {
0x00010304 beq 0x10232 | goto label_84;
| }
0x00010306 b 0x1019c | goto label_85;
| label_198:
0x00010308 ldr.w r1, [fp, 0x10] | r1 = *(arg_10h);
0x0001030c movs r2, 0 | r2 = 0;
0x0001030e ldr r0, [sp, 0x24] | r0 = var_24h;
0x00010310 bl 0xe38c | fcn_0000e38c (r0, r1, r2, r3);
0x00010314 b 0x10092 | goto label_86;
| label_202:
0x00010316 ldr r1, [r0, 4] | r1 = *((r0 + 4));
0x00010318 ldr r3, [r1, 0x10] | r3 = *((r1 + 0x10));
0x0001031a cmp r3, 0 |
| if (r3 == 0) {
0x0001031c beq 0x10280 | goto label_87;
| }
0x0001031e ldrsb r3, [r3, r2] | r3 = *((r3 + r2));
0x00010320 cmp r3, 0 |
| if (r3 >= 0) {
0x00010322 bge.w 0x1014a | goto label_88;
| }
0x00010326 b 0x10280 | goto label_87;
| label_216:
0x00010328 ldr r3, [sp, 0x20] | r3 = var_20h;
0x0001032a movs r7, 1 | r7 = 1;
0x0001032c cmp r2, 0 |
0x0001032e ldr r0, [r3, 4] | r0 = *((r3 + 4));
0x00010330 mov.w r3, 0xb | r3 = 0xb;
0x00010334 ldr r1, [r0, 0x44] | r1 = *((r0 + 0x44));
0x00010336 str r7, [r1, 4] | *((r1 + 4)) = r7;
0x00010338 ldr r1, [sp, 0x20] | r1 = var_20h;
0x0001033a str r3, [r1, 0xc] | *((r1 + 0xc)) = r3;
0x0001033c ldr r1, [r0, 0x60] | r1 = *((r0 + 0x60));
| if (r2 < 0) {
0x0001033e blt.w 0x104e2 | goto label_221;
| }
0x00010342 cmp r1, 0 |
| if (r1 == 0) {
0x00010344 beq.w 0x10498 | goto label_222;
| }
0x00010348 ldr r3, [r1] | r3 = *(r1);
0x0001034a cmp r3, 0 |
| if (r3 == 0) {
0x0001034c beq.w 0x104a8 | goto label_103;
| }
0x00010350 ldrsb r3, [r3, r2] | r3 = *((r3 + r2));
0x00010352 cmp r3, 0 |
| if (r3 < 0) {
0x00010354 blt.w 0x104a8 | goto label_103;
| }
| label_98:
0x00010358 cmp r3, 0xc |
0x0001035a ite le |
| if (r3 > 0xc) {
0x0001035c movle r3, 0 | r3 = 0;
| }
| if (r3 <= 0xc) {
0x0001035e movgt r3, 1 | r3 = 1;
| }
| label_99:
0x00010360 cmp r3, 0 |
| if (r3 == 0) {
0x00010362 beq 0x10412 | goto label_223;
| }
0x00010364 ldr r3, [pc, 0x1c8] |
0x00010366 mov.w r1, 0x3a0 | r1 = 0x3a0;
0x00010368 strb r0, [r5, 5] | *((r5 + 5)) = r0;
0x0001036a str r0, [sp, 4] | var_44h_2 = r0;
0x0001036c ldr r0, [pc, 0x1c4] |
0x0001036e add r3, pc | r3 = 0x208a2;
0x00010370 str r3, [sp, 8] | var_8h_2 = r3;
0x00010372 movs r3, 0 | r3 = 0;
0x00010374 str r3, [sp] | *(sp) = r3;
0x00010376 add r0, pc | r0 = 0x208ae;
0x00010378 movs r3, 0xd | r3 = 0xd;
0x0001037a blx 0x7380 | BIO_set_init ();
0x0001037e b 0x102fa | goto label_89;
| label_214:
0x00010380 ldr.w r1, [sb, 4] | r1 = *((sb + 4));
| do {
| label_94:
0x00010384 adds r1, 0x10 | r1 += 0x10;
0x00010386 b 0x10272 | goto label_90;
| label_208:
0x00010388 mov r7, r5 | r7 = r5;
0x0001038a movs r5, 1 | r5 = 1;
0x0001038c mov r8, r7 | r8 = r7;
0x0001038e b 0x100d8 | goto label_78;
| label_213:
0x00010390 sub.w r3, r7, r8 | r3 = r7 - r8;
0x00010394 str r0, [sp, 0x14] | var_14h_2 = r0;
0x00010396 strd r3, r7, [sp, 0xc] | __asm ("strd r3, r7, [sp, 0xc]");
0x0001039a mov.w r1, 0x3bc | r1 = 0x3bc;
0x0001039e ldr r3, [pc, 0x198] |
0x000103a0 str.w sb, [sp, 4] | __asm ("str.w sb, [var_44h_2]");
0x000103a4 ldr r0, [pc, 0x194] |
0x000103a6 add r3, pc |
0x000103a8 str r3, [sp, 8] | var_8h_2 = r3;
0x000103aa ldr r3, [sp, 0x20] | r3 = var_20h;
0x000103ac add r0, pc | r0 = 0x208ec;
0x000103ae ldr r3, [r3, 0xc] | r3 = *(0x208f0);
0x000103b0 str r3, [sp] | *(sp) = r3;
0x000103b2 movs r3, 6 | r3 = 6;
0x000103b4 blx 0x7380 | BIO_set_init ();
0x000103b8 b 0x10232 | goto label_84;
| label_201:
0x000103ba movw r8, 0x4e2e | r8 = 0x4e2e;
0x000103be b 0x1019c | goto label_85;
0x000103c0 ldr r0, [pc, 0x17c] |
0x000103c2 ldr r2, [pc, 0x144] | r2 = *(0x1050a);
0x000103c4 add r0, pc | r0 = 0x20908;
0x000103c6 ldr r2, [r0, r2] | r2 = *(0x20908);
0x000103c8 ldr r0, [r2] | r0 = *(0x20908);
0x000103ca ldr r2, [sp, 0x44] | r2 = var_44h;
0x000103cc eors r0, r2 | r0 ^= r2;
0x000103ce mov.w r2, 0 | r2 = 0;
| if (r0 != r2) {
0x000103d2 bne.w 0x104fe | goto label_209;
| }
0x000103d6 ldr.w r0, [fp, 8] | r0 = *(arg_8h);
0x000103da add sp, 0x4c |
0x000103dc pop.w {r4, r5, r6, r7, r8, sb, sl, fp, lr} |
0x000103e0 b.w 0x744c | void (*0x744c)() ();
0x000103e2 invalid |
0x000103e4 ldr r1, [pc, 0x15c] |
0x000103e6 ldr r3, [pc, 0x120] | r3 = *(0x1050a);
0x000103e8 add r1, pc | r1 = "GET / HTTP/1.0\r\n";
0x000103ea ldr r3, [r1, r3] | r3 = "GET / HTTP/1.0\r\n";
0x000103ec ldr r1, [r3] | r1 = "GET / HTTP/1.0\r\n";
0x000103ee ldr r3, [sp, 0x44] | r3 = var_44h;
0x000103f0 eors r1, r3 | r1 ^= r3;
0x000103f2 mov.w r3, 0 | r3 = 0;
| if (r1 != r3) {
0x000103f6 bne.w 0x104fe | goto label_209;
| }
0x000103fa mov r2, r0 | r2 = r0;
0x000103fc mov r3, r5 | r3 = r5;
0x000103fe mov r1, r6 | r1 = r6;
0x00010400 mov r0, r4 | r0 = r4;
0x00010402 add sp, 0x4c |
0x00010404 pop.w {r4, r5, r6, r7, r8, sb, sl, fp, lr} |
0x00010408 b.w 0xe214 | goto label_91;
| label_215:
0x0001040c ldr r2, [sp, 0x20] | r2 = var_20h;
0x0001040e movs r3, 0xb | r3 = 0xb;
0x00010410 str r3, [r2, 0xc] | *((r2 + 0xc)) = r3;
| label_223:
0x00010412 mov.w r8, 0xb | r8 = 0xb;
0x00010416 b 0x1019c | goto label_85;
0x00010418 mov r0, r1 | r0 = r1;
0x0001041a mov.w r8, 0x67 | r8 = 0x67;
0x0001041e blx 0x68a0 | UI_method_set_closer ();
0x00010422 b 0x101d2 | goto label_92;
| label_212:
0x00010424 ldr.w r1, [sb, 4] | r1 = *((sb + 4));
0x00010428 ldr r3, [r1, 0x10] | r3 = *((r1 + 0x10));
0x0001042a cmp r3, 0 |
0x0001042c beq 0x10384 |
| } while (r3 == 0);
0x0001042e ldrsb r3, [r3, r2] | r3 = *((r3 + r2));
0x00010430 cmp r3, 0 |
| if (r3 >= 0) {
0x00010432 bge.w 0x10224 | goto label_93;
| }
0x00010436 b 0x10384 | goto label_94;
| label_217:
0x00010438 cmp r2, 0 |
| if (r2 < 0) {
0x0001043a blt 0x1046e | goto label_224;
| }
0x0001043c cmp r1, 0 |
| if (r1 == 0) {
0x0001043e beq 0x104ea | goto label_225;
| }
0x00010440 ldr r3, [r1] | r3 = *(r1);
| if (r3 == 0) {
0x00010442 cbz r3, 0x10472 | goto label_106;
| }
0x00010444 ldrsb r3, [r3, r2] | r3 = *((r3 + r2));
0x00010446 cmp r3, 0 |
| if (r3 < 0) {
0x00010448 blt 0x10472 | goto label_106;
| }
| label_105:
0x0001044a cmp r3, 5 |
| if (r3 <= 5) {
0x0001044c ble.w 0x102fa | goto label_89;
| }
| label_95:
0x00010450 ldr r3, [pc, 0xf4] |
0x00010452 mov.w r1, 0x3a4 | r1 = 0x3a4;
0x00010456 str r7, [sp, 4] | var_44h_2 = r7;
0x00010458 ldr r0, [pc, 0xf0] |
0x0001045a add r3, pc |
0x0001045c str r3, [sp, 8] | var_8h_2 = r3;
0x0001045e ldr r3, [sp, 0x20] | r3 = var_20h;
0x00010460 add r0, pc | r0 = 0x209b0;
0x00010462 ldr r3, [r3, 0xc] | r3 = *(0x209b2);
0x00010464 str r3, [sp] | *(sp) = r3;
0x00010466 movs r3, 6 | r3 = 6;
0x00010468 blx 0x7380 | BIO_set_init ();
0x0001046c b 0x102fa | goto label_89;
| label_224:
0x0001046e cmp r1, 0 |
| if (r1 == 0) {
0x00010470 beq 0x104fa | goto label_226;
| }
| label_106:
0x00010472 ldr r3, [r1, 4] | r3 = *((r1 + 4));
0x00010474 cmp r3, 5 |
| if (r3 <= 5) {
0x00010476 ble.w 0x102fa | goto label_89;
| }
0x0001047a b 0x10450 | goto label_95;
| label_219:
0x0001047c ldr r1, [r0, 4] | r1 = *((r0 + 4));
0x0001047e ldr r3, [r1, 0x10] | r3 = *((r1 + 0x10));
| if (r3 == 0) {
0x00010480 cbz r3, 0x1048a | goto label_101;
| }
0x00010482 ldrsb r3, [r3, r2] | r3 = *((r3 + r2));
0x00010484 cmp r3, 0 |
| if (r3 >= 0) {
0x00010486 bge.w 0x102d6 | goto label_96;
| }
| label_101:
0x0001048a adds r1, 0x10 | r1 += 0x10;
| label_100:
0x0001048c ldr r3, [r1, 4] | r3 = *((r1 + 4));
0x0001048e cmp r3, 5 |
0x00010490 ite le |
| if (r3 > 5) {
0x00010492 movle r3, 0 | r3 = 0;
| }
| if (r3 <= 5) {
0x00010494 movgt r3, 1 | r3 = 1;
| }
0x00010496 b 0x102de | goto label_97;
| label_222:
0x00010498 ldr r1, [r0, 4] | r1 = *((r0 + 4));
0x0001049a ldr r3, [r1, 0x10] | r3 = *((r1 + 0x10));
| if (r3 == 0) {
0x0001049c cbz r3, 0x104a6 | goto label_104;
| }
0x0001049e ldrsb r3, [r3, r2] | r3 = *((r3 + r2));
0x000104a0 cmp r3, 0 |
| if (r3 >= 0) {
0x000104a2 bge.w 0x10358 | goto label_98;
| }
| label_104:
0x000104a6 adds r1, 0x10 | r1 += 0x10;
| label_103:
0x000104a8 ldr r3, [r1, 4] | r3 = *((r1 + 4));
0x000104aa cmp r3, 0xc |
0x000104ac ite le |
| if (r3 > 0xc) {
0x000104ae movle r3, 0 | r3 = 0;
| }
| if (r3 <= 0xc) {
0x000104b0 movgt r3, 1 | r3 = 1;
| }
0x000104b2 b 0x10360 | goto label_99;
| label_218:
0x000104b4 cmp r1, 0 |
| if (r1 != 0) {
0x000104b6 bne 0x1048c | goto label_100;
| }
0x000104b8 ldr r1, [r0, 4] | r1 = *((r0 + 4));
0x000104ba b 0x1048a | goto label_101;
| label_220:
0x000104bc ldr r3, [pc, 0x90] |
0x000104be movw r1, 0x3ab | r1 = 0x3ab;
0x000104c2 str.w r8, [sp, 0xc] | __asm ("str.w r8, [var_ch_2]");
0x000104c6 str r7, [sp, 4] | var_44h_2 = r7;
0x000104c8 add r3, pc |
0x000104ca ldr r0, [pc, 0x88] |
0x000104cc str r3, [sp, 8] | var_8h_2 = r3;
0x000104ce ldr r3, [sp, 0x20] | r3 = var_20h;
0x000104d0 add r0, pc | r0 = 0x20a2a;
0x000104d2 ldr r3, [r3, 0xc] | r3 = *(0x20a28);
0x000104d4 str r3, [sp] | *(sp) = r3;
0x000104d6 movs r3, 6 | r3 = 6;
0x000104d8 blx 0x7380 | BIO_set_init ();
0x000104dc ldr r3, [sp, 0x30] | r3 = var_30h;
0x000104de ldr r2, [r3, 8] | r2 = *(0x20a30);
0x000104e0 b 0x102e4 | goto label_102;
| label_221:
0x000104e2 cmp r1, 0 |
| if (r1 != 0) {
0x000104e4 bne 0x104a8 | goto label_103;
| }
0x000104e6 ldr r1, [r0, 4] | r1 = *((r0 + 4));
0x000104e8 b 0x104a6 | goto label_104;
| label_225:
0x000104ea ldr r1, [r0, 4] | r1 = *((r0 + 4));
0x000104ec ldr r3, [r1, 0x10] | r3 = *((r1 + 0x10));
| if (r3 == 0) {
0x000104ee cbz r3, 0x104f6 | goto label_227;
| }
0x000104f0 ldrsb r3, [r3, r2] | r3 = *((r3 + r2));
0x000104f2 cmp r3, 0 |
| if (r3 >= 0) {
0x000104f4 bge 0x1044a | goto label_105;
| }
| do {
| label_227:
0x000104f6 adds r1, 0x10 | r1 += 0x10;
0x000104f8 b 0x10472 | goto label_106;
| label_226:
0x000104fa ldr r1, [r0, 4] | r1 = *((r0 + 4));
0x000104fc b 0x104f6 |
| } while (1);
| label_209:
0x000104fe blx 0x7428 | BIO_push ();
0x00010502 nop |
0x00010504 strh r2, [r1, 0x3a] | *((r1 + 0x3a)) = r2;
0x00010506 movs r1, r0 | r1 = r0;
0x00010508 lsrs r4, r1, 0x20 | r4 = r1 >> 0x20;
0x0001050a movs r0, r0 |
0x0001050c strh r2, [r0, 0x3a] | *((r0 + 0x3a)) = r2;
0x0001050e movs r1, r0 | r1 = r0;
0x00010510 lsrs r4, r5, 0x20 | r4 = r5 >> 0x20;
0x00010512 movs r0, r0 |
0x00010514 lsls r4, r5, 0x1f | r4 = r5 << 0x1f;
0x00010516 movs r0, r0 |
0x00010518 strh r2, [r7, 0x2a] | *((r7 + 0x2a)) = r2;
0x0001051a movs r1, r0 | r1 = r0;
0x0001051c lsrs r2, r3, 0x1a | r2 = r3 >> 0x1a;
0x0001051e movs r1, r0 | r1 = r0;
0x00010520 lsrs r4, r2, 0x1a | r4 = r2 >> 0x1a;
0x00010522 movs r1, r0 | r1 = r0;
0x00010524 lsls r6, r7, 0xb | r6 = r7 << 0xb;
0x00010526 movs r1, r0 | r1 = r0;
0x00010528 lsrs r2, r2, 0x19 | r2 >>= 0x19;
0x0001052a movs r1, r0 | r1 = r0;
0x0001052c lsls r6, r3, 9 | r6 = r3 << 9;
0x0001052e movs r1, r0 | r1 = r0;
0x00010530 lsrs r2, r1, 0x16 | r2 = r1 >> 0x16;
0x00010532 movs r1, r0 | r1 = r0;
0x00010534 lsls r2, r3, 7 | r2 = r3 << 7;
0x00010536 movs r1, r0 | r1 = r0;
0x00010538 lsrs r6, r1, 0x17 | r6 = r1 >> 0x17;
0x0001053a movs r1, r0 | r1 = r0;
0x0001053c lsls r4, r4, 6 | r4 <<= 6;
0x0001053e movs r1, r0 | r1 = r0;
0x00010540 strh r4, [r1, 0x1c] | *((r1 + 0x1c)) = r4;
0x00010542 movs r1, r0 | r1 = r0;
0x00010544 strh r0, [r5, 0x1a] | *((r5 + 0x1a)) = r0;
0x00010546 movs r1, r0 | r1 = r0;
0x00010548 lsrs r2, r0, 0x13 | r2 = r0 >> 0x13;
0x0001054a movs r1, r0 | r1 = r0;
0x0001054c lsls r0, r6, 3 | r0 = r6 << 3;
0x0001054e movs r1, r0 | r1 = r0;
0x00010550 lsrs r0, r0, 0x12 | r0 >>= 0x12;
0x00010552 movs r1, r0 | r1 = r0;
0x00010554 lsls r0, r0, 2 | r0 <<= 2;
0x00010556 movs r1, r0 | r1 = r0;
0x00010558 push.w {r4, r5, r6, r7, r8, sb, sl, fp, lr} |
0x0001055c mov r5, r0 | r5 = r0;
0x0001055e ldr r4, [pc, 0x29c] |
0x00010560 sub sp, 0x1c |
0x00010562 mov r7, r1 | r7 = r1;
0x00010564 ldr r0, [pc, 0x298] | r0 = *(0x10800);
0x00010566 ldr.w ip, [r5, 0x10] | ip = *((r5 + 0x10));
0x0001056a add r4, pc | r4 = 0x20d6c;
0x0001056c ldr.w fp, [pc, 0x294] |
0x00010570 ldr r0, [r4, r0] |
0x00010572 ldr.w r8, [ip, 0x54] | r8 = *((ip + 0x54));
0x00010576 add fp, pc | fp = 0x20d7e;
0x00010578 ldrd sl, sb, [sp, 0x40] | __asm ("ldrd sl, sb, [var_40h]");
0x0001057c ldr r0, [r0] | r0 = *(0x20d6c);
0x0001057e str r0, [sp, 0x14] | var_14h = r0;
0x00010580 mov.w r0, 0 | r0 = 0;
0x00010584 mov.w r0, 0x2000 | r0 = 0x2000;
0x00010588 ldr r6, [r5, 4] | r6 = *((r5 + 4));
0x0001058a str r0, [sp, 0xc] | var_ch = r0;
0x0001058c cmp.w r8, 0 |
| if (r8 != 0) {
0x00010590 bne.w 0x106d0 | goto label_228;
| }
0x00010594 ldr r0, [r6] | r0 = *(r6);
0x00010596 mov r4, r2 | r4 = r2;
0x00010598 cmp r0, 0 |
| if (r0 == 0) {
0x0001059a beq 0x10612 | goto label_229;
| }
0x0001059c mov lr, r3 | lr = r3;
0x0001059e subs r3, r2, 3 | r3 = r2 - 3;
0x000105a0 bic r3, r3, 2 | r3 = BIT_MASK (r3, 2);
0x000105a4 cmp r3, 0 |
0x000105a6 it ne |
| if (r3 != 0) {
0x000105a8 cmpne r2, 1 | __asm ("cmpne r2, 1");
| }
| if (r3 > 0) {
0x000105aa bhi 0x1069e | goto label_230;
| }
0x000105ac add.w r3, r6, 0x2000 | r3 = r6 + 0x2000;
0x000105b0 strd r2, lr, [r6, 0x10] | __asm ("strd r2, lr, [r6, 0x10]");
0x000105b4 ldr r0, [r3, 0x28] | r0 = *((r3 + 0x28));
0x000105b6 bl 0xf28c | r0 = fcn_0000f28c (r0, r1, r2, r3, r4);
0x000105ba cmp r0, 0 |
| if (r0 != 0) {
0x000105bc bne.w 0x106ec | goto label_231;
| }
0x000105c0 cmp r4, 5 |
| if (r4 == 5) {
0x000105c2 beq 0x10680 | goto label_108;
| }
0x000105c4 ldr r2, [r6, 0x10] | r2 = *((r6 + 0x10));
0x000105c6 add.w fp, r6, 0x28 |
0x000105ca cmp r2, 3 |
0x000105cc it ne |
| if (r2 != 3) {
0x000105ce cmpne r2, 0 | __asm ("cmpne r2, 0");
| }
0x000105d0 ite eq |
| if (r2 != 3) {
0x000105d2 moveq r3, 1 | r3 = 1;
| }
| if (r2 == 3) {
0x000105d4 movne r3, 0 | r3 = 0;
| }
| if (r2 == 3) {
0x000105d6 beq 0x10658 | goto label_232;
| }
0x000105d8 cmp r2, 1 |
| if (r2 == 1) {
0x000105da beq.w 0x10728 | goto label_233;
| }
0x000105de movw r4, 0x1187 |
0x000105e2 str r3, [r6, 0x14] | *((r6 + 0x14)) = r3;
0x000105e4 movt r4, 1 | r4 = 0x11187;
| do {
| label_112:
0x000105e8 ldr r2, [pc, 0x21c] |
0x000105ea ldr r3, [pc, 0x214] | r3 = *(0x10802);
0x000105ec add r2, pc | r2 = 0x20df8;
0x000105ee ldr r3, [r2, r3] | r3 = *(0x20df8);
0x000105f0 ldr r2, [r3] | r2 = *(0x20df8);
0x000105f2 ldr r3, [sp, 0x14] | r3 = var_14h;
0x000105f4 eors r2, r3 | r2 ^= r3;
0x000105f6 mov.w r3, 0 | r3 = 0;
0x000105fa itt eq |
| if (r2 != r3) {
0x000105fc moveq r3, 0 | r3 = 0;
| }
| if (r2 != r3) {
0x000105fe moveq r2, r4 | r2 = r4;
| }
| if (r2 != r3) {
0x00010600 bne.w 0x107f8 | goto label_234;
| }
| label_110:
0x00010604 mov r1, r7 | r1 = r7;
0x00010606 mov r0, r6 | r0 = r6;
0x00010608 add sp, 0x1c |
0x0001060a pop.w {r4, r5, r6, r7, r8, sb, sl, fp, lr} |
0x0001060e b.w 0xe214 | goto label_91;
| label_229:
0x00010612 ldr r0, [pc, 0x1f8] | r0 = *(0x1080e);
0x00010614 ldr.w r0, [fp, r0] | r0 = *((fp + r0));
0x00010616 movs r0, r0 |
0x00010618 ldr r6, [r0, 8] | r6 = *(0x10816);
0x0001061a ldr.w r0, [ip, 0x2c] | r0 = *((ip + 0x2c));
0x0001061e ldr.w r6, [r0, r6, lsl 2] | r6 = *(0x1080e);
0x00010622 ldr r0, [r6, 0x20] | r0 = *(0x1082e);
0x00010624 cmp r0, 1 |
| if (r0 == 1) {
0x00010626 beq.w 0x107a6 | goto label_235;
| }
0x0001062a cmp r0, 2 |
| if (r0 == 2) {
0x0001062c beq 0x106a8 | goto label_236;
| }
0x0001062e ldr r4, [pc, 0x1e0] |
0x00010630 ldr r0, [pc, 0x1cc] | r0 = *(0x10800);
0x00010632 add r4, pc | r4 = 0x20e48;
0x00010634 ldr r0, [r4, r0] | r0 = *(0x20e48);
0x00010636 ldr r4, [r0] | r4 = *(0x20e48);
0x00010638 ldr r0, [sp, 0x14] | r0 = var_14h;
0x0001063a eors r4, r0 | r4 ^= r0;
0x0001063c mov.w r0, 0 | r0 = 0;
| if (r4 != r0) {
0x00010640 bne.w 0x107f8 | goto label_234;
| }
0x00010644 str.w sl, [sp, 0x40] | __asm ("str.w sl, [var_40h]");
0x00010648 ldr r0, [r5, 8] | r0 = *((r5 + 8));
0x0001064a str.w sb, [sp, 0x44] | __asm ("str.w sb, [var_44h_2]");
0x0001064e add sp, 0x1c |
0x00010650 pop.w {r4, r5, r6, r7, r8, sb, sl, fp, lr} |
0x00010654 b.w 0x7210 | goto label_107;
| label_232:
0x00010658 cmp.w sl, 0x2000 |
0x0001065c mov r1, fp | r1 = fp;
0x0001065e sbcs sb, sb, 0 | __asm ("sbcs sb, sb, 0");
0x00010662 add r2, sp, 0xc | r2 += var_ch;
0x00010664 mov r0, r6 | r0 = r6;
0x00010666 it lt |
| if (sl >= 0x2000) {
0x00010668 strlt sl, [sp, 0xc] | var_ch = sl;
| }
0x0001066c bl 0xe5d0 | fcn_0000e5d0 (r0, r1, r2);
0x00010670 movs r3, 0 | r3 = 0;
0x00010672 ldr r1, [sp, 0xc] | r1 = var_ch;
0x00010674 mov r4, r0 | r4 = r0;
0x00010676 str r3, [r6, 0x14] | *((r6 + 0x14)) = r3;
0x00010678 cmp r0, 0 |
0x0001067a bne 0x105e8 |
| } while (r0 != 0);
| label_111:
0x0001067c cmp r1, 0 |
| if (r1 != 0) {
0x0001067e bne 0x1070e | goto label_237;
| }
| label_108:
0x00010680 movs r0, 0 | r0 = 0;
| do {
| label_109:
0x00010682 ldr r2, [pc, 0x190] |
0x00010684 ldr r3, [pc, 0x178] | r3 = *(0x10800);
0x00010686 add r2, pc | r2 = 0x20ea0;
0x00010688 ldr r3, [r2, r3] | r3 = *(0x20ea0);
0x0001068a ldr r2, [r3] | r2 = *(0x20ea0);
0x0001068c ldr r3, [sp, 0x14] | r3 = var_14h;
0x0001068e eors r2, r3 | r2 ^= r3;
0x00010690 mov.w r3, 0 | r3 = 0;
| if (r2 != r3) {
0x00010694 bne.w 0x107f8 | goto label_234;
| }
0x00010698 add sp, 0x1c |
0x0001069a pop.w {r4, r5, r6, r7, r8, sb, sl, fp, pc} |
| label_230:
0x0001069e movw r0, 0x1187 |
0x000106a2 movt r0, 1 | r0 = 0x11187;
0x000106a6 b 0x10682 |
| } while (1);
| label_236:
0x000106a8 mov r1, r0 | r1 = r0;
0x000106aa ldr r0, [pc, 0x16c] |
0x000106ac ldr.w r2, [ip, 0x40] | r2 = *((ip + 0x40));
0x000106b0 add r0, pc | r0 = 0x20ece;
0x000106b2 blx 0x7558 | fcn_00007558 ();
0x000106b6 adds r3, r7, 4 | r3 = r7 + 4;
0x000106b8 cmp r4, 3 |
0x000106ba str r3, [r0] | *(r0) = r3;
0x000106bc ldr r3, [r7, 8] | r3 = *((r7 + 8));
0x000106be str r3, [r0, 4] | *((r0 + 4)) = r3;
0x000106c0 ldr r3, [r7, 8] | r3 = *((r7 + 8));
0x000106c2 str r0, [r3] | *(r3) = r0;
0x000106c4 it ne |
| if (r4 == 3) {
0x000106c6 movne r3, 3 | r3 = 3;
| }
0x000106c8 str r0, [r7, 8] | *((r7 + 8)) = r0;
0x000106ca it ne |
| if (r4 == 3) {
0x000106cc strne r3, [r6, 0x20] | *((r6 + 0x20)) = r3;
| }
0x000106ce b 0x10680 | goto label_108;
| label_228:
0x000106d0 ldr.w r0, [ip, 0x40] | r0 = *((ip + 0x40));
0x000106d4 blx 0x6830 | fcn_00006830 ();
0x000106d8 adds r2, r7, 4 | r2 = r7 + 4;
0x000106da mov r3, r0 | r3 = r0;
0x000106dc str r2, [r0] | *(r0) = r2;
0x000106de movs r0, 0x67 | r0 = 0x67;
0x000106e0 ldr r2, [r7, 8] | r2 = *((r7 + 8));
0x000106e2 str r2, [r3, 4] | *((r3 + 4)) = r2;
0x000106e4 ldr r2, [r7, 8] | r2 = *((r7 + 8));
0x000106e6 str r3, [r2] | *(r2) = r3;
0x000106e8 str r3, [r7, 8] | *((r7 + 8)) = r3;
0x000106ea b 0x10682 | goto label_109;
| label_231:
0x000106ec ldr r2, [pc, 0x12c] |
0x000106ee ldr r3, [pc, 0x110] | r3 = *(0x10802);
0x000106f0 add r2, pc | r2 = 0x20f10;
0x000106f2 ldr r3, [r2, r3] | r3 = *(0x20f10);
0x000106f4 ldr r2, [r3] | r2 = *(0x20f10);
0x000106f6 ldr r3, [sp, 0x14] | r3 = var_14h;
0x000106f8 eors r2, r3 | r2 ^= r3;
0x000106fa mov.w r3, 0 | r3 = 0;
| if (r2 != r3) {
0x000106fe bne 0x107f8 | goto label_234;
| }
0x00010700 sub.w r3, r4, 5 | r3 = r4 - 5;
0x00010704 mov r2, r0 | r2 = r0;
0x00010706 clz r3, r3 | r3 &= r3;
0x0001070a lsrs r3, r3, 5 | r3 >>= 5;
0x0001070c b 0x10604 | goto label_110;
| label_237:
0x0001070e ldr r3, [r5, 0x10] | r3 = *((r5 + 0x10));
0x00010710 mov r0, fp | r0 = fp;
0x00010712 ldr r2, [r3, 0x40] | r2 = *((r3 + 0x40));
0x00010714 blx 0x73e0 | stack_chk_fail ();
0x00010716 mcr p13, 3, r1, c4, c11, 1 | __asm ("mcr p13, 3, r1, c4, c11, 1");
0x0001071a str r3, [r0] | *(r0) = r3;
0x0001071c ldr r3, [r7, 8] | r3 = *((r7 + 8));
0x0001071e str r3, [r0, 4] | *((r0 + 4)) = r3;
0x00010720 ldr r3, [r7, 8] | r3 = *((r7 + 8));
0x00010722 str r0, [r3] | *(r3) = r0;
0x00010724 str r0, [r7, 8] | *((r7 + 8)) = r0;
0x00010726 b 0x10680 | goto label_108;
| label_233:
0x00010728 ldr.w sb, [r6, 0x1c] | sb = *((r6 + 0x1c));
0x0001072c str r3, [sp, 4] | var_8h = r3;
0x0001072e cmp.w sb, 0 |
| if (sb != 0) {
0x00010732 beq 0x10758 |
0x00010734 ldr r4, [r6, 0x20] | r4 = *((r6 + 0x20));
0x00010736 mov r2, sb | r2 = sb;
0x00010738 movs r1, 0xa | r1 = 0xa;
0x0001073a mov r0, r4 | r0 = r4;
0x0001073c blx 0x7ba0 | r0 = fcn_00007ba0 ();
| if (r0 == 0) {
0x00010740 cbz r0, 0x10758 | goto label_238;
| }
0x00010742 ldr r3, [sp, 4] | r3 = var_8h;
0x00010744 adds r1, r0, 1 | r1 = r0 + 1;
0x00010746 str r1, [r6, 0x20] | *((r6 + 0x20)) = r1;
0x00010748 subs r1, r1, r4 | r1 -= r4;
0x0001074a mov fp, r4 |
0x0001074c str r1, [sp, 0xc] | var_ch = r1;
0x0001074e str r3, [r6, 0x14] | *((r6 + 0x14)) = r3;
0x00010750 sub.w r3, sb, r1 | r3 = sb - r1;
0x00010754 str r3, [r6, 0x1c] | *((r6 + 0x1c)) = r3;
0x00010756 b 0x1067c | goto label_111;
| }
| label_238:
0x00010758 add r3, sp, 0x10 | r3 += var_10h;
0x0001075a mov.w r2, 0x2000 | r2 = 0x2000;
0x0001075e str r3, [sp, 4] | var_8h = r3;
0x00010760 movs r3, 0 | r3 = 0;
0x00010762 strd r3, r2, [sp, 0xc] | __asm ("strd r3, r2, [sp, 0xc]");
0x00010766 b 0x1078a |
| while (r0 == 0) {
0x00010768 ldrd r2, sl, [sp, 0xc] | __asm ("ldrd r2, sl, [var_ch]");
0x0001076c movs r1, 0xa | r1 = 0xa;
0x0001076e mov r0, fp | r0 = fp;
0x00010770 add.w sb, sl, r2 | sb = sl + r2;
0x00010774 mov r2, sb | r2 = sb;
0x00010776 str.w sb, [sp, 0xc] | __asm ("str.w sb, [var_ch]");
0x0001077a blx 0x7ba0 | r0 = fcn_00007ba0 ();
| if (r0 != 0) {
0x0001077e cbnz r0, 0x107ce | goto label_239;
| }
0x00010780 add r8, sl | r8 += sl;
0x00010782 rsb.w r3, r8, 0x2000 | r3 = 0x2000 - r8;
0x00010786 str r3, [sp, 0x10] | var_10h = r3;
| if (r3 == 0) {
0x00010788 cbz r3, 0x107e6 | goto label_240;
| }
0x0001078a ldr r2, [sp, 4] | r2 = var_8h;
0x0001078c add.w r1, fp, r8 | r1 = fp + r8;
0x00010790 mov r0, r6 | r0 = r6;
0x00010792 bl 0xe5d0 | r0 = fcn_0000e5d0 (r0, r1, r2);
0x00010796 mov r4, r0 | r4 = r0;
0x00010798 cmp r0, 0 |
0x0001079a beq 0x10768 |
| }
0x0001079c cmp r0, 0xb |
| if (r0 == 0xb) {
0x0001079e beq 0x107ec | goto label_241;
| }
| label_113:
0x000107a0 movs r3, 0 | r3 = 0;
0x000107a2 str r3, [r6, 0x14] | *((r6 + 0x14)) = r3;
0x000107a4 b 0x105e8 | goto label_112;
| label_235:
0x000107a6 ldr r0, [pc, 0x78] |
0x000107a8 movs r1, 0x10 | r1 = 0x10;
0x000107aa ldr.w r2, [ip, 0x40] | r2 = *((ip + 0x40));
0x000107ae add r0, pc | r0 = 0x20fd4;
0x000107b0 blx 0x7558 | fcn_00007558 ();
0x000107b4 adds r3, r7, 4 | r3 = r7 + 4;
0x000107b6 cmp r4, 3 |
0x000107b8 str r3, [r0] | *(r0) = r3;
0x000107ba ldr r3, [r7, 8] | r3 = *((r7 + 8));
0x000107bc str r3, [r0, 4] | *((r0 + 4)) = r3;
0x000107be ldr r3, [r7, 8] | r3 = *((r7 + 8));
0x000107c0 str r0, [r3] | *(r3) = r0;
0x000107c2 str r0, [r7, 8] | *((r7 + 8)) = r0;
| if (r4 == 3) {
0x000107c4 beq.w 0x10680 | goto label_108;
| }
0x000107c8 movs r3, 2 | r3 = 2;
0x000107ca str r3, [r6, 0x20] | *((r6 + 0x20)) = r3;
0x000107cc b 0x10680 | goto label_108;
| label_239:
0x000107ce sub.w r1, r0, fp | r1 = r0 - fp;
0x000107d2 str r4, [r6, 0x14] | *((r6 + 0x14)) = r4;
0x000107d4 adds r1, 1 | r1++;
0x000107d6 sub.w r3, sb, r1 | r3 = sb - r1;
0x000107da str r1, [sp, 0xc] | var_ch = r1;
0x000107dc str r3, [r6, 0x1c] | *((r6 + 0x1c)) = r3;
0x000107de add.w r3, fp, r1 | r3 = fp + r1;
0x000107e2 str r3, [r6, 0x20] | *((r6 + 0x20)) = r3;
0x000107e4 b 0x1067c | goto label_111;
| label_240:
0x000107e6 mov r1, sb | r1 = sb;
0x000107e8 str r3, [r6, 0x14] | *((r6 + 0x14)) = r3;
0x000107ea b 0x1067c | goto label_111;
| label_241:
0x000107ec ldr r3, [sp, 0xc] | r3 = var_ch;
0x000107ee cmp r3, 0 |
| if (r3 == 0) {
0x000107f0 beq 0x107a0 | goto label_113;
| }
0x000107f2 strd r3, fp, [r6, 0x1c] | __asm ("strd r3, fp, [r6, 0x1c]");
0x000107f6 b 0x107a0 | goto label_113;
| label_234:
0x000107f8 blx 0x7428 | BIO_push ();
0x000107fc strh r6, [r4, 0xe] | *((r4 + 0xe)) = r6;
0x000107fe movs r1, r0 | r1 = r0;
0x00010800 lsrs r4, r1, 0x20 | r4 = r1 >> 0x20;
0x00010802 movs r0, r0 |
0x00010804 strh r2, [r3, 0xe] | *((r3 + 0xe)) = r2;
0x00010806 movs r1, r0 | r1 = r0;
0x00010808 strh r4, [r4, 0xa] | *((r4 + 0xa)) = r4;
0x0001080a movs r1, r0 | r1 = r0;
0x0001080c lsls r4, r5, 0x1f | r4 = r5 << 0x1f;
0x0001080e movs r0, r0 |
0x00010810 strh r6, [r3, 8] | *((r3 + 8)) = r6;
0x00010812 movs r1, r0 | r1 = r0;
0x00010814 strh r2, [r1, 6] | *((r1 + 6)) = r2;
0x00010816 movs r1, r0 | r1 = r0;
0x00010818 lsrs r4, r6, 0xb | r4 = r6 >> 0xb;
0x0001081a movs r1, r0 | r1 = r0;
0x0001081c strh r0, [r4, 2] | *((r4 + 2)) = r0;
0x0001081e movs r1, r0 | r1 = r0;
0x00010820 lsls r6, r7, 5 | r6 = r7 << 5;
0x00010822 movs r1, r0 | r1 = r0;
| }
[*] Function sprintf used 3 times mod_ssl.so