Function at 0x100236b0
Capabilities:
Link many functions at runtime
Resolve function by parsing pe exports

Disassembly:
push 0xffffffffffffffff
push 0x100fb265
mov eax, dword fs:[0]
push eax
mov eax, 0x313c
call fcn.100bbf80
mov eax, dword [0x1012fdf0]
xor eax, esp
mov dword [esp + 0x3138], eax
push ebx
push ebp
push esi
push edi
mov eax, dword [0x1012fdf0]
xor eax, esp
push eax
lea eax, [esp + 0x3150]
mov dword fs:[0], eax
mov eax, dword [esp + 0x3160]
push 2
mov dword [esp + 0x40], ecx
xor ebx, ebx
mov edi, 0xf
push 0x101085f8
lea ecx, [esp + 0xd4]
mov dword [esp + 0x8c], eax
mov dword [esp + 0x50], edx
mov esi, 1
mov dword [esp + 0xec], edi
mov dword [esp + 0xe8], ebx
mov byte [esp + 0xd8], bl
call fcn.10005cd0
push str.._adaptor_cflashtool_api.cpp
lea eax, [esp + 0xd0]
push eax
lea ecx, [esp + 0x110]
push ecx
mov dword [esp + 0x3164], ebx
call fcn.10007a10
add esp, 0xc
push str.__line:
push eax
lea edx, [esp + 0x12c]
push edx
mov byte [esp + 0x3164], 1
call fcn.10007a10
add esp, 0xc
push str.1260
push eax
lea eax, [esp + 0x148]
push eax
mov byte [esp + 0x3164], 2
call fcn.10007a10
sub esp, 0x10
mov ecx, esp
mov byte [esp + 0x3174], 3
mov dword [esp + 0x60], esp
push 0x101085d0
push eax
push ecx
call fcn.10007a10
sub esp, 0x10
mov byte [esp + 0x3190], 4
mov ecx, esp
mov dword [esp + 0xdc], esp
push 0x2d
mov dword [ecx + 0x18], edi
mov dword [ecx + 0x14], ebx
push str.cflashtool_api::FlashTool_Connect_Download_DA
mov byte [ecx + 4], bl
call fcn.10005cd0
mov ecx, esi
lea edx, [esp + 0x22a8]
mov byte [esp + 0x3190], 3
call fcn.1003be80
mov esi, 0x10
cmp dword [esp + 0x158], esi
jb 0x10023810
mov edx, dword [esp + 0x144]
push edx
call fcn.100b3111
add esp, 4
mov dword [esp + 0x158], edi
mov dword [esp + 0x154], ebx
mov byte [esp + 0x144], bl
cmp dword [esp + 0x13c], esi
jb 0x1002383e
mov eax, dword [esp + 0x128]
push eax
call fcn.100b3111
add esp, 4
mov dword [esp + 0x13c], edi
mov dword [esp + 0x138], ebx
mov byte [esp + 0x128], bl
cmp dword [esp + 0x120], esi
jb 0x1002386c
mov ecx, dword [esp + 0x10c]
push ecx
call fcn.100b3111
add esp, 4
mov dword [esp + 0x120], edi
mov dword [esp + 0x11c], ebx
mov byte [esp + 0x10c], bl
mov byte [esp + 0x3158], 9
cmp dword [esp + 0xe4], esi
jb 0x100238a2
mov edx, dword [esp + 0xd0]
push edx
call fcn.100b3111
add esp, 4
lea eax, [esp + 0x1c]
mov dword [esp + 0xe4], edi
mov dword [esp + 0xe0], ebx
mov byte [esp + 0xd0], bl
mov dword [esp + 0x1c], 1
mov dword [esp + 0x18], eax
call fcn.100433c0
mov eax, dword [eax]
lea ecx, [esp + 0x18]
push ecx
lea edx, [esp + 0x2c]
push edx
mov esi, eax
call fcn.10007ae0
mov ecx, dword [eax]
mov dword [esp + 0x6c], ecx
mov dword [eax], ebx
mov byte [esp + 0x3158], 0xa
mov eax, dword [esp + 0x28]
cmp eax, ebx
je 0x10023904
push eax
call fcn.1005c230
add esp, 4
mov dword [esp + 0x28], ebx
mov eax, dword [esp + 0x6c]
cmp eax, ebx
je 0x10023a10
lea edx, [esp + 0x3164]
mov dword [esp + 0x60], edx
mov dword [esp + 0x64], 0x1002d4d0
mov dword [esp + 0x68], 0x1002d4e0
push str.bCheckScatter:__d
lea eax, [esp + 0x198]
push eax
call fcn.10007580
lea ecx, [esp + 0x60]
push ecx
mov byte [esp + 0x315c], 0xb
call fcn.1000f490
add esp, 4
lea edx, [esp + 0x2254]
mov ecx, eax
call fcn.10007680
mov esi, eax
mov byte [esp + 0x3158], 0xc
call fcn.100433c0
mov eax, dword [eax]
lea edx, [esp + 0x6c]
push edx
push eax
lea eax, [esp + 0x38]
push eax
call fcn.10007b90
add esp, 0xc
mov byte [esp + 0x3158], 0xd
mov ecx, dword [eax + 4]
mov ebx, dword [esi + 0x14]
add ecx, 4
cmp dword [esi + 0x18], 0x10
jb 0x100239a0
mov esi, dword [esi + 4]
jmp 0x100239a3
add esi, 4
push esi
call fcn.10008730
lea ecx, [esp + 0x30]
mov byte [esp + 0x3158], 0xc
call fcn.10005040
cmp dword [esp + 0x226c], 0x10
jb 0x100239d4
mov ecx, dword [esp + 0x2258]
push ecx
call fcn.100b3111
add esp, 4
lea edx, [esp + 0x194]
xor ebx, ebx
push edx
mov dword [esp + 0x2270], 0xf
mov dword [esp + 0x226c], ebx
mov byte [esp + 0x225c], bl
mov byte [esp + 0x315c], 0xa
call fcn.100031a0
mov eax, dword [esp + 0x6c]
cmp eax, ebx
jne 0x1002392b
mov byte [esp + 0x3158], 9
cmp eax, ebx
je 0x10023a29
push eax
call fcn.1005c230
add esp, 4
mov dword [esp + 0x6c], ebx
push 0x103
lea eax, [esp + 0x2d41]
push ebx
push eax
mov byte [esp + 0x2d48], bl
call fcn.100b8cd0
mov eax, dword [esp + 0x90]
mov ecx, dword [eax + 0x9c]
mov edi, dword [eax + 0x64]
mov eax, dword [0x10135b94]
add esp, 0xc
mov dword [esp + 0x28], ecx
cmp eax, ebx
je 0x10023a82
push 0x1010c148
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp eax, ebx
je 0x10023a82
lea edx, [esp + 0x28f4]
push edx
push edi
call eax
mov esi, eax
jmp 0x10023a87
mov esi, 0xc001000c
mov dword [esp + 0x40], esi
cmp esi, ebx
jne 0x10024f0f
lea ecx, [esp + 0x1c]
mov dword [esp + 0x1c], 1
mov dword [esp + 0x24], ecx
call fcn.100433c0
mov eax, dword [eax]
lea edx, [esp + 0x24]
push edx
lea ecx, [esp + 0x1c]
push ecx
mov esi, eax
call fcn.10007ae0
mov edx, dword [eax]
mov dword [esp + 0x70], edx
mov dword [eax], ebx
mov byte [esp + 0x3158], 0xe
mov eax, dword [esp + 0x18]
cmp eax, ebx
je 0x10023ae0
push eax
call fcn.1005c230
add esp, 4
mov dword [esp + 0x18], ebx
mov eax, dword [esp + 0x70]
mov ebp, 0x1002d510
cmp eax, ebx
je 0x10023bf0
lea eax, [esp + 0x2b14]
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], 0x1002d500
mov dword [esp + 0x68], ebp
push str.da_source_type:__d
lea ecx, [esp + 0x198]
push ecx
call fcn.10007580
lea edx, [esp + 0x60]
push edx
mov byte [esp + 0x315c], 0xf
call fcn.1000f490
add esp, 4
lea edx, [esp + 0x2254]
mov ecx, eax
call fcn.10007680
mov esi, eax
mov byte [esp + 0x3158], 0x10
call fcn.100433c0
mov eax, dword [eax]
lea ecx, [esp + 0x70]
push ecx
push eax
lea edx, [esp + 0x38]
push edx
call fcn.10007b90
add esp, 0xc
mov byte [esp + 0x3158], 0x11
mov ecx, dword [eax + 4]
mov ebx, dword [esi + 0x14]
add ecx, 4
cmp dword [esi + 0x18], 0x10
jb 0x10023b7d
mov esi, dword [esi + 4]
jmp 0x10023b80
add esi, 4
push esi
call fcn.10008730
mov ebx, 0x10
lea ecx, [esp + 0x30]
mov byte [esp + 0x3158], bl
call fcn.10005040
cmp dword [esp + 0x226c], ebx
jb 0x10023bb4
mov eax, dword [esp + 0x2258]
push eax
call fcn.100b3111
add esp, 4
lea ecx, [esp + 0x194]
xor ebx, ebx
push ecx
mov dword [esp + 0x2270], 0xf
mov dword [esp + 0x226c], ebx
mov byte [esp + 0x225c], bl
mov byte [esp + 0x315c], 0xe
call fcn.100031a0
mov eax, dword [esp + 0x70]
cmp eax, ebx
jne 0x10023b08
mov byte [esp + 0x3158], 9
cmp eax, ebx
je 0x10023c09
push eax
call fcn.1005c230
add esp, 4
mov dword [esp + 0x70], ebx
mov eax, dword [esp + 0x2b14]
cmp eax, ebx
jne 0x10023c67
mov dword [esp + 0x24c4], ebx
xor eax, eax
lea ecx, [ecx]
mov cl, byte [esp + eax + 0x28f4]
mov byte [esp + eax + 0x24c8], cl
inc eax
cmp cl, bl
jne 0x10023c20
lea edx, [esp + 0x24c8]
push edx
call fcn.1003ce20
add esp, 4
test al, al
je 0x10023c93
mov dword [esp + 0x24c4], 2
call fcn.1001a330
mov dword [esp + 0x26c8], eax
mov dword [esp + 0x26cc], edx
jmp 0x10023c93
cmp eax, 1
jne 0x100251aa
mov ecx, dword [esp + 0x29fc]
mov dword [esp + 0x24c4], eax
mov eax, dword [esp + 0x29f8]
mov dword [esp + 0x26d0], eax
mov dword [esp + 0x26d4], ecx
mov esi, dword [0x10135b94]
mov dword [esp + 0x8c], ebx
mov dword [esp + 0x90], ebx
mov dword [esp + 0x94], ebx
mov dword [esp + 0x98], ebx
mov dword [esp + 0x9c], ebx
mov dword [esp + 0xa0], ebx
mov byte [esp + 0x23], bl
cmp esi, ebx
je 0x10023cf5
push 0x1010c4bc
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp eax, ebx
je 0x10023cef
mov edi, dword [esp + 0x28]
lea edx, [esp + 0x23]
push edx
push edi
call eax
mov esi, dword [0x10135b94]
jmp 0x10023cfe
mov esi, dword [0x10135b94]
mov edi, dword [esp + 0x28]
mov eax, 0xc001000c
mov dword [esp + 0x40], eax
lea eax, [esp + 0x2b1c]
mov dword [esp + 0x2c], eax
lea ebp, [esp + 0x26dc]
cmp dword [esp + 0x3164], ebx
je 0x100240de
push 0x103
lea ecx, [esp + 0x2e49]
push ebx
push ecx
mov byte [esp + 0x2e50], bl
call fcn.100b8cd0
add esp, 0xc
cmp esi, ebx
je 0x10023d61
push 0x1010c45c
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp eax, ebx
je 0x10023d61
lea edx, [esp + 0x2e44]
push edx
push edi
call eax
mov esi, eax
jmp 0x10023d66
mov esi, 0xc001000c
mov dword [esp + 0x40], esi
cmp esi, ebx
jne 0x10024f0f
lea ecx, [esp + 0x2254]
push ecx
lea ecx, [esp + 0x2e48]
call fcn.1002b9a0
lea ecx, [esp + 0x2254]
mov byte [esp + 0x3158], 0x16
call fcn.100a71d0
lea edx, [esp + 0xa8]
push edx
call fcn.1002ba50
lea eax, [esp + 0xa8]
push eax
lea ecx, [esp + 0x2258]
push ecx
lea edx, [esp + 0x246c]
push edx
mov byte [esp + 0x3164], 0x17
call fcn.10018970
add esp, 0xc
lea ecx, [esp + 0xa8]
mov byte [esp + 0x3158], 0x19
call fcn.10018940
lea eax, [esp + 0x2464]
push eax
call fcn.10018a90
add esp, 4
test al, al
je 0x10023ec0
lea ecx, [esp + 0x1c]
mov dword [esp + 0x1c], 1
mov dword [esp + 0x50], ecx
call fcn.100433c0
mov eax, dword [eax]
lea edx, [esp + 0x50]
push edx
lea ecx, [esp + 0x28]
push ecx
mov esi, eax
call fcn.10007ae0
mov edx, dword [eax]
mov dword [esp + 0x18], edx
mov dword [eax], ebx
mov byte [esp + 0x3158], 0x1a
mov eax, dword [esp + 0x24]
cmp eax, ebx
je 0x10023e48
push eax
call fcn.1005c230
add esp, 4
mov dword [esp + 0x24], ebx
mov eax, dword [esp + 0x18]
cmp eax, ebx
je 0x10023ea2
call fcn.100433c0
mov eax, dword [eax]
lea ecx, [esp + 0x18]
push ecx
push eax
lea edx, [esp + 0x38]
push edx
call fcn.10007b90
add esp, 0xc
mov byte [esp + 0x3158], 0x1b
mov ecx, dword [eax + 4]
add ecx, 4
push str.enable_PCDRAM_checksum
mov ebx, 0x16
call fcn.10008730
lea ecx, [esp + 0x30]
mov byte [esp + 0x3158], 0x1a
call fcn.10005040
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x10023e50
xor ebx, ebx
mov byte [esp + 0x3158], 0x19
cmp eax, ebx
je 0x10023eb7
push eax
call fcn.1005c230
add esp, 4
or byte [esp + 0x23], 4
mov edi, dword [esp + 0x28]
mov eax, dword [0x10135b94]
cmp eax, ebx
je 0x10023ee8
push 0x1010c488
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp eax, ebx
je 0x10023ee8
lea ecx, [esp + 0x2d3c]
push ecx
push edi
call eax
mov esi, eax
jmp 0x10023eed
mov esi, 0xc001000c
mov dword [esp + 0x40], esi
cmp esi, ebx
je 0x10023f2c
lea ecx, [esp + 0x2464]
call fcn.10018940
lea ecx, [esp + 0x2254]
call fcn.10018940
lea edx, [esp + 0x2270]
push edx
mov dword [esp + 0x315c], 0xffffffff
call fcn.1003c130
mov eax, esi
jmp 0x10025338
mov dword [esp + 0x2b1c], ebx
xor eax, eax
jmp 0x10023f40
mov cl, byte [esp + eax + 0x2d3c]
mov byte [esp + eax + 0x2b20], cl
inc eax
cmp cl, bl
jne 0x10023f40
lea eax, [esp + 0x2d3c]
push eax
call fcn.1003ce20
add esp, 4
test al, al
je 0x10023f85
mov dword [esp + 0x2b1c], 2
call fcn.1001a2b0
mov dword [esp + 0x2d20], eax
mov dword [esp + 0x2d24], edx
lea ecx, [esp + 0x178]
push ecx
call fcn.1002bbb0
lea edx, [esp + 0x15c]
push edx
mov byte [esp + 0x315c], 0x1c
call fcn.1002bb00
lea eax, [esp + 0x15c]
push eax
lea ecx, [esp + 0x2258]
push ecx
lea edx, [esp + 0x24a4]
push edx
mov byte [esp + 0x3164], 0x1d
call fcn.10018970
add esp, 0xc
lea ecx, [esp + 0x178]
push ecx
push eax
lea edx, [esp + 0x2488]
push edx
mov byte [esp + 0x3164], 0x1e
call fcn.10018970
add esp, 0xc
lea ecx, [esp + 0x249c]
call fcn.10018940
lea ecx, [esp + 0x15c]
call fcn.10018940
lea ecx, [esp + 0x178]
mov byte [esp + 0x3158], 0x22
call fcn.10018940
lea eax, [esp + 0x2480]
push eax
call fcn.10018a90
add esp, 4
test al, al
je 0x100240ae
lea ecx, [esp + 0xa8]
push ecx
lea ecx, [esp + 0x2484]
mov dword [esp + 0x26e0], ebx
call fcn.10018820
cmp dword [eax + 0x18], 0x10
jb 0x1002405a
mov ecx, dword [eax + 4]
jmp 0x1002405d
lea ecx, [eax + 4]
lea edx, [esp + 0x26e0]
mov al, byte [ecx]
mov byte [edx], al
inc ecx
inc edx
cmp al, bl
jne 0x10024064
lea ecx, [esp + 0xa8]
call fcn.10004870
lea edx, [esp + 0x26e0]
push edx
call fcn.1003ce20
add esp, 4
test al, al
je 0x100240b0
mov dword [esp + 0x26dc], 2
call fcn.1001a2b0
mov dword [esp + 0x28e0], eax
mov dword [esp + 0x28e4], edx
jmp 0x100240b0
xor ebp, ebp
lea ecx, [esp + 0x2480]
call fcn.10018940
lea ecx, [esp + 0x2464]
call fcn.10018940
lea ecx, [esp + 0x2254]
mov byte [esp + 0x3158], 9
call fcn.10018940
jmp 0x100240e4
mov dword [esp + 0x2c], ebx
xor ebp, ebp
mov esi, dword [esp + 0x84]
mov eax, dword [esp + 0x3c]
mov edx, dword [esi + 0x6c]
mov dword [esp + 0xc8], eax
mov eax, dword [esi + 0x68]
lea ecx, [esp + 0xc4]
push edx
mov dword [esp + 0xc8], esi
mov dword [esp + 0xec], ecx
mov dword [esp + 0xf0], 0x1001e820
mov dword [esp + 0xf4], 0x1001e850
mov dword [esp + 0xf8], 0x1001e8a0
mov dword [esp + 0xfc], ebx
mov dword [esp + 0x100], ebx
mov dword [esp + 0x104], ebx
mov dword [esp + 0x108], ebx
call eax
movzx ecx, byte [esp + 0x23]
movzx edx, byte [esi + 0xa0]
movzx eax, byte [esi + 0xa1]
mov dword [esp + 0x8c], ecx
mov ecx, dword [esi + 0xa4]
mov dword [esp + 0x90], edx
mov edx, dword [esi + 0xa8]
mov dword [esp + 0x94], eax
mov eax, dword [esi + 0xac]
mov dword [esp + 0x98], ecx
lea ecx, [esp + 0x1c]
mov dword [esp + 0x9c], edx
mov dword [esp + 0xa0], eax
mov dword [esp + 0x1c], 1
mov dword [esp + 0x24], ecx
call fcn.100433c0
mov eax, dword [eax]
lea edx, [esp + 0x24]
push edx
lea ecx, [esp + 0x1c]
push ecx
mov esi, eax
call fcn.10007ae0
mov edx, dword [eax]
mov dword [esp + 0x74], edx
mov dword [eax], ebx
mov byte [esp + 0x3158], 0x23
mov eax, dword [esp + 0x18]
cmp eax, ebx
je 0x100241ed
push eax
call fcn.1005c230
add esp, 4
mov dword [esp + 0x18], ebx
mov eax, dword [esp + 0x74]
mov edi, 0x10012310
cmp eax, ebx
je 0x1002433e
lea eax, [esp + 0x8c]
mov dword [esp + 0x60], eax
mov eax, 0x10012300
lea ecx, [esp + 0x90]
lea edx, [esp + 0x94]
mov dword [esp + 0x64], eax
mov dword [esp + 0x68], edi
mov dword [esp + 0x54], ecx
mov dword [esp + 0x58], eax
mov dword [esp + 0x5c], edi
mov dword [esp + 0x30], edx
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], edi
push str.checksum_level:__d___battery_setting:__d__reset_key_setting:__d
lea eax, [esp + 0x198]
push eax
call fcn.10007580
lea ecx, [esp + 0x60]
push ecx
mov byte [esp + 0x315c], 0x24
call fcn.1000f490
lea edx, [esp + 0x58]
add esp, 4
push edx
call fcn.1000f490
lea ecx, [esp + 0x34]
add esp, 4
push ecx
call fcn.1000f490
add esp, 4
lea edx, [esp + 0x2254]
mov ecx, eax
call fcn.10007680
mov esi, eax
mov byte [esp + 0x3158], 0x25
call fcn.100433c0
mov eax, dword [eax]
lea edx, [esp + 0x74]
push edx
push eax
lea eax, [esp + 0x80]
push eax
call fcn.10007b90
add esp, 0xc
mov byte [esp + 0x3158], 0x26
mov ecx, dword [eax + 4]
mov ebx, dword [esi + 0x14]
add ecx, 4
cmp dword [esi + 0x18], 0x10
jb 0x100242ce
mov esi, dword [esi + 4]
jmp 0x100242d1
add esi, 4
push esi
call fcn.10008730
lea ecx, [esp + 0x78]
mov byte [esp + 0x3158], 0x25
call fcn.10005040
cmp dword [esp + 0x226c], 0x10
jb 0x10024302
mov ecx, dword [esp + 0x2258]
push ecx
call fcn.100b3111
add esp, 4
lea edx, [esp + 0x194]
xor ebx, ebx
push edx
mov dword [esp + 0x2270], 0xf
mov dword [esp + 0x226c], ebx
mov byte [esp + 0x225c], bl
mov byte [esp + 0x315c], 0x23
call fcn.100031a0
mov eax, dword [esp + 0x74]
cmp eax, ebx
jne 0x1002423c
mov byte [esp + 0x3158], 9
cmp eax, ebx
je 0x10024357
push eax
call fcn.1005c230
add esp, 4
mov dword [esp + 0x74], ebx
lea eax, [esp + 0x1c]
mov dword [esp + 0x1c], 1
mov dword [esp + 0x24], eax
call fcn.100433c0
mov eax, dword [eax]
lea ecx, [esp + 0x24]
push ecx
lea edx, [esp + 0x1c]
push edx
mov esi, eax
call fcn.10007ae0
mov ecx, dword [eax]
mov dword [esp + 0x50], ecx
mov dword [eax], ebx
mov byte [esp + 0x3158], 0x27
mov eax, dword [esp + 0x18]
cmp eax, ebx
je 0x100243a4
push eax
call fcn.1005c230
add esp, 4
mov dword [esp + 0x18], ebx
mov eax, dword [esp + 0x50]
cmp eax, ebx
je 0x100244f8
lea edx, [esp + 0x98]
mov dword [esp + 0x30], edx
mov eax, 0x10012300
lea ecx, [esp + 0x9c]
lea edx, [esp + 0xa0]
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], edi
mov dword [esp + 0x54], ecx
mov dword [esp + 0x58], 0x1002d370
mov dword [esp + 0x5c], 0x1002d380
mov dword [esp + 0x60], edx
mov dword [esp + 0x64], eax
mov dword [esp + 0x68], edi
push str.connect_da_end_stage:__d___enable_dram_in_1st_da:__d__da_log_level:__d
lea eax, [esp + 0x198]
push eax
call fcn.10007580
lea ecx, [esp + 0x30]
push ecx
mov byte [esp + 0x315c], 0x28
call fcn.1000f490
lea edx, [esp + 0x58]
add esp, 4
push edx
call fcn.1000f490
lea ecx, [esp + 0x64]
add esp, 4
push ecx
call fcn.1000f490
add esp, 4
lea edx, [esp + 0x2254]
mov ecx, eax
call fcn.10007680
mov esi, eax
mov byte [esp + 0x3158], 0x29
call fcn.100433c0
mov eax, dword [eax]
lea edx, [esp + 0x50]
push edx
push eax
lea eax, [esp + 0x80]
push eax
call fcn.10007b90
add esp, 0xc
mov byte [esp + 0x3158], 0x2a
mov ecx, dword [eax + 4]
mov ebx, dword [esi + 0x14]
add ecx, 4
cmp dword [esi + 0x18], 0x10
jb 0x10024488
mov esi, dword [esi + 4]
jmp 0x1002448b
add esi, 4
push esi
call fcn.10008730
lea ecx, [esp + 0x78]
mov byte [esp + 0x3158], 0x29
call fcn.10005040
cmp dword [esp + 0x226c], 0x10
jb 0x100244bc
mov ecx, dword [esp + 0x2258]
push ecx
call fcn.100b3111
add esp, 4
lea edx, [esp + 0x194]
xor ebx, ebx
push edx
mov dword [esp + 0x2270], 0xf
mov dword [esp + 0x226c], ebx
mov byte [esp + 0x225c], bl
mov byte [esp + 0x315c], 0x27
call fcn.100031a0
mov eax, dword [esp + 0x50]
cmp eax, ebx
jne 0x100243f6
mov byte [esp + 0x3158], 9
cmp eax, ebx
je 0x10024511
push eax
call fcn.1005c230
add esp, 4
mov dword [esp + 0x50], ebx
mov edx, dword [esp + 0x2c]
mov esi, dword [esp + 0x3c]
lea eax, [esp + 0xe8]
push eax
lea ecx, [esp + 0x90]
push ecx
mov ecx, dword [esi]
push ebp
push edx
lea eax, [esp + 0x24d4]
push eax
push ecx
call dword [sym.imp.FlashtoollibEx.dll_flashtool_connect_da]
mov dword [esp + 0x40], eax
cmp eax, ebx
je 0x1002454b
mov esi, eax
jmp 0x10023f0d
mov ecx, dword [esi]
lea eax, [esp + 0x254]
push eax
push ecx
call dword [sym.imp.FlashtoollibEx.dll_flashtool_get_device_info]
mov dword [esp + 0x40], eax
cmp eax, ebx
jne 0x10024544
lea eax, [esp + 0x2294]
push eax
push esi
call sym.Flashtoollib.dll_FlashTool_GetDAReport
movzx ecx, word [esp + 0x344]
push ecx
xor eax, eax
lea edx, [esp + 0x2d38]
push str.MT_04X
push edx
mov byte [esp + 0x2d40], bl
mov dword [esp + 0x2d41], eax
mov word [esp + 0x2d45], ax
mov byte [esp + 0x2d47], al
call fcn.100b29c0
add esp, 0xc
xor eax, eax
mov cl, byte [esp + eax + 0x2d34]
mov byte [esp + eax + 0x229c], cl
inc eax
cmp cl, bl
jne 0x100245b1
lea eax, [esp + 0x229c]
push eax
call sym.Flashtoollib.dll_BBChipTypeFromBBChipName
mov cx, word [esp + 0x348]
mov dx, word [esp + 0x34a]
mov dword [esp + 0x2298], eax
mov ax, word [esp + 0x344]
mov word [esp + 0x22c0], ax
mov eax, 2
mov dword [esp + 0x22c4], eax
mov dword [esp + 0x233c], eax
mov eax, dword [esp + 0x324]
mov word [esp + 0x22bc], cx
mov ecx, dword [esp + 0x33c]
mov word [esp + 0x22be], dx
mov edx, dword [esp + 0x340]
mov dword [esp + 0x2334], eax
mov eax, 0xc6a
mov dword [esp + 0x2344], ecx
mov dword [esp + 0x2348], edx
mov dword [esp + 0x23b0], eax
mov dword [esp + 0x22f0], eax
mov dword [esp + 0x22cc], eax
mov dword [esp + 0x240c], eax
mov dword [esp + 0x242c], eax
mov dword [esp + 0x2338], eax
cmp dword [esp + 0x32c], ebx
je 0x10024684
mov dword [esp + 0x2338], ebx
cmp dword [esp + 0x254], 1
jne 0x10024b1a
mov ecx, dword [esp + 0x25c]
mov edx, dword [esp + 0x260]
mov eax, dword [esp + 0x264]
mov dword [esp + 0x23b4], ecx
mov ecx, dword [esp + 0x268]
mov dword [esp + 0x23b8], edx
mov edx, dword [esp + 0x26c]
mov dword [esp + 0x23bc], eax
mov eax, dword [esp + 0x270]
mov dword [esp + 0x23c0], ecx
mov ecx, dword [esp + 0x274]
mov dword [esp + 0x23c4], edx
mov edx, dword [esp + 0x278]
mov dword [esp + 0x23c8], eax
mov eax, dword [esp + 0x27c]
mov dword [esp + 0x23cc], ecx
mov ecx, dword [esp + 0x280]
mov dword [esp + 0x23d0], edx
mov edx, dword [esp + 0x284]
mov dword [esp + 0x23d4], eax
mov eax, dword [esp + 0x288]
mov dword [esp + 0x23d8], ecx
mov ecx, dword [esp + 0x28c]
mov dword [esp + 0x23dc], edx
mov edx, dword [esp + 0x290]
mov dword [esp + 0x23e0], eax
mov eax, dword [esp + 0x294]
mov dword [esp + 0x23e4], ecx
mov ecx, dword [esp + 0x298]
mov dword [esp + 0x23e8], edx
mov dword [esp + 0x23ec], eax
xor eax, eax
lea edx, [esp + 0x1c]
mov dword [esp + 0x23b0], ebx
mov dword [esp + 0x4c], 2
mov dword [esp + 0x23f0], ecx
mov dword [esp + 0x24], eax
mov dword [esp + 0x88], edx
mov ecx, dword [esp + eax*4 + 0x29c]
mov dword [esp + eax*4 + 0x23f4], ecx
mov dword [esp + 0x1c], 1
call fcn.100433c0
mov eax, dword [eax]
lea edx, [esp + 0x88]
push edx
lea ecx, [esp + 0x1c]
push ecx
mov esi, eax
call fcn.10007ae0
mov edx, dword [eax]
mov dword [esp + 0x2c], edx
mov dword [eax], ebx
mov byte [esp + 0x3158], 0x2b
mov eax, dword [esp + 0x18]
cmp eax, ebx
je 0x100247e8
push eax
call fcn.1005c230
add esp, 4
mov dword [esp + 0x18], ebx
mov eax, dword [esp + 0x2c]
cmp eax, ebx
je 0x10024915
lea eax, [esp + 0x24]
mov dword [esp + 0x30], eax
mov eax, 0x10012300
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], edi
mov dword [esp + 0x58], eax
mov dword [esp + 0x5c], edi
push str.m_emmc_cid__d_:_0x_x
lea ecx, [esp + 0x198]
push ecx
call fcn.10007580
lea edx, [esp + 0x30]
push edx
mov byte [esp + 0x315c], 0x2c
call fcn.1000f490
mov ecx, dword [esp + 0x28]
lea edx, [esp + ecx*4 + 0x23f8]
lea ecx, [esp + 0x58]
add esp, 4
push ecx
mov dword [esp + 0x58], edx
call fcn.1000f490
add esp, 4
lea edx, [esp + 0x2254]
mov ecx, eax
call fcn.10007680
mov esi, eax
mov byte [esp + 0x3158], 0x2d
call fcn.100433c0
mov eax, dword [eax]
lea edx, [esp + 0x2c]
push edx
push eax
lea eax, [esp + 0x80]
push eax
call fcn.10007b90
add esp, 0xc
mov byte [esp + 0x3158], 0x2e
mov ecx, dword [eax + 4]
mov ebx, dword [esi + 0x14]
add ecx, 4
cmp dword [esi + 0x18], 0x10
jb 0x100248a5
mov esi, dword [esi + 4]
jmp 0x100248a8
add esi, 4
push esi
call fcn.10008730
lea ecx, [esp + 0x78]
mov byte [esp + 0x3158], 0x2d
call fcn.10005040
cmp dword [esp + 0x226c], 0x10
jb 0x100248d9
mov ecx, dword [esp + 0x2258]
push ecx
call fcn.100b3111
add esp, 4
lea edx, [esp + 0x194]
xor ebx, ebx
push edx
mov dword [esp + 0x2270], 0xf
mov dword [esp + 0x226c], ebx
mov byte [esp + 0x225c], bl
mov byte [esp + 0x315c], 0x2b
call fcn.100031a0
mov eax, dword [esp + 0x2c]
cmp eax, ebx
jne 0x10024811
mov byte [esp + 0x3158], 9
cmp eax, ebx
je 0x1002492e
push eax
call fcn.1005c230
add esp, 4
mov dword [esp + 0x2c], ebx
mov eax, dword [esp + 0x24]
inc eax
mov dword [esp + 0x24], eax
cmp eax, 4
jb 0x10024792
xor eax, eax
lea ecx, [esp + 0x88]
mov dword [esp + 0x18], eax
mov dword [esp + 0xa4], ecx
jmp 0x10024960
mov dl, byte [esp + eax + 0x2ac]
mov byte [esp + eax + 0x2404], dl
mov dword [esp + 0x88], 1
call fcn.100433c0
mov eax, dword [eax]
lea ecx, [esp + 0xa4]
push ecx
lea edx, [esp + 0x20]
push edx
mov esi, eax
call fcn.10007ae0
mov ecx, dword [eax]
mov dword [esp + 0x2c], ecx
mov dword [eax], ebx
mov byte [esp + 0x3158], 0x2f
mov eax, dword [esp + 0x1c]
cmp eax, ebx
je 0x100249b9
push eax
call fcn.1005c230
add esp, 4
mov dword [esp + 0x1c], ebx
mov eax, dword [esp + 0x2c]
cmp eax, ebx
je 0x10024aef
mov eax, 0x10012300
lea edx, [esp + 0x18]
lea ecx, [esp + 0x44]
mov dword [esp + 0x30], edx
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], edi
mov dword [esp + 0x54], ecx
mov dword [esp + 0x58], eax
mov dword [esp + 0x5c], edi
mov edx, dword [esp + 0x18]
movzx eax, byte [esp + edx + 0x2404]
push str.m_emmc_fwver__d_:_0x_x
lea ecx, [esp + 0x198]
push ecx
mov dword [esp + 0x4c], eax
call fcn.10007580
lea edx, [esp + 0x30]
push edx
mov byte [esp + 0x315c], 0x30
call fcn.1000f490
lea ecx, [esp + 0x58]
add esp, 4
push ecx
call fcn.1000f490
add esp, 4
lea edx, [esp + 0x2254]
mov ecx, eax
call fcn.10007680
mov esi, eax
mov byte [esp + 0x3158], 0x31
call fcn.100433c0
mov eax, dword [eax]
lea edx, [esp + 0x2c]
push edx
push eax
lea eax, [esp + 0x80]
push eax
call fcn.10007b90
add esp, 0xc
mov byte [esp + 0x3158], 0x32
mov ecx, dword [eax + 4]
mov ebx, dword [esi + 0x14]
add ecx, 4
cmp dword [esi + 0x18], 0x10
jb 0x10024a7f
mov esi, dword [esi + 4]
jmp 0x10024a82
add esi, 4
push esi
call fcn.10008730
lea ecx, [esp + 0x78]
mov byte [esp + 0x3158], 0x31
call fcn.10005040
cmp dword [esp + 0x226c], 0x10
jb 0x10024ab3
mov ecx, dword [esp + 0x2258]
push ecx
call fcn.100b3111
add esp, 4
lea edx, [esp + 0x194]
xor ebx, ebx
push edx
mov dword [esp + 0x2270], 0xf
mov dword [esp + 0x226c], ebx
mov byte [esp + 0x225c], bl
mov byte [esp + 0x315c], 0x2f
call fcn.100031a0
mov eax, dword [esp + 0x2c]
cmp eax, ebx
jne 0x100249ea
mov byte [esp + 0x3158], 9
cmp eax, ebx
je 0x10024b08
push eax
call fcn.1005c230
add esp, 4
mov dword [esp + 0x2c], ebx
mov eax, dword [esp + 0x18]
inc eax
mov dword [esp + 0x18], eax
cmp eax, 8
jb 0x10024960
cmp dword [esp + 0x254], 2
jne 0x10024b87
mov eax, dword [esp + 0x294]
mov ecx, dword [esp + 0x298]
mov edx, dword [esp + 0x29c]
mov dword [esp + 0x2414], eax
mov eax, dword [esp + 0x2a0]
mov dword [esp + 0x2418], ecx
mov ecx, dword [esp + 0x2a4]
mov dword [esp + 0x241c], edx
mov edx, dword [esp + 0x2a8]
mov dword [esp + 0x240c], ebx
mov dword [esp + 0x4c], 3
mov dword [esp + 0x2420], eax
mov dword [esp + 0x2424], ecx
mov dword [esp + 0x2428], edx
mov eax, dword [esp + 0x2b4]
and al, 0xf0
cmp al, 0x10
jne 0x10024bef
mov cx, word [esp + 0x2b8]
mov dx, word [esp + 0x2bc]
mov ax, word [esp + 0x2c0]
mov word [esp + 0x2326], cx
mov ecx, dword [esp + 0x2c4]
mov word [esp + 0x232a], dx
mov edx, dword [esp + 0x2c8]
mov dword [esp + 0x22f0], ebx
mov dword [esp + 0x4c], 1
mov word [esp + 0x2328], ax
mov dword [esp + 0x22fc], ecx
mov dword [esp + 0x2300], edx
mov eax, dword [esp + 0x2e4]
cmp eax, 0x21
je 0x10024c00
cmp eax, 0x22
jne 0x10024c19
mov eax, dword [esp + 0x2ec]
mov dword [esp + 0x22cc], ebx
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x22dc], eax
cmp dword [esp + 0x2f4], 0x30
jne 0x10024c86
mov ecx, dword [esp + 0x2fc]
mov edx, dword [esp + 0x300]
mov eax, dword [esp + 0x304]
mov dword [esp + 0x2434], ecx
mov ecx, dword [esp + 0x308]
mov dword [esp + 0x2438], edx
mov edx, dword [esp + 0x30c]
mov dword [esp + 0x243c], eax
mov eax, dword [esp + 0x310]
mov dword [esp + 0x242c], ebx
mov dword [esp + 0x4c], 4
mov dword [esp + 0x2440], ecx
mov dword [esp + 0x2444], edx
mov dword [esp + 0x2448], eax
mov ecx, dword [esp + 0x350]
mov edx, dword [esp + 0x354]
mov eax, dword [esp + 0x358]
mov edi, dword [esp + 0x48]
mov dword [esp + 0x239c], ecx
mov ecx, dword [esp + 0x35c]
mov dword [esp + 0x23a0], edx
mov dword [esp + 0x23a8], ecx
lea edx, [esp + 0x2294]
mov dword [esp + 0x23a4], eax
mov ecx, 0x74
lea esi, [esp + 0x2294]
push edx
rep movsd dword es:[edi], dword [esi]
call fcn.1001e8d0
mov esi, dword [0x10135b94]
mov ebp, dword [sym.imp.KERNEL32.dll_GetProcAddress]
add esp, 4
cmp esi, ebx
je 0x10024d1b
push 0x1010c544
push esi
call ebp
cmp eax, ebx
je 0x10024d15
mov edx, dword [esp + 0x3c]
lea ecx, [esp + 0x2294]
push ecx
push edx
call eax
mov esi, dword [0x10135b94]
mov edi, eax
jmp 0x10024d20
mov esi, dword [0x10135b94]
mov edi, 0xc001000c
mov dword [esp + 0x40], edi
cmp edi, ebx
je 0x10024d47
lea eax, [esp + 0x2270]
push eax
mov dword [esp + 0x315c], 0xffffffff
call fcn.1003c130
mov eax, edi
jmp 0x10025338
mov ecx, dword [esp + 0x84]
cmp dword [ecx + 0xa4], 2
jne 0x1002518b
cmp esi, ebx
je 0x10024d88
push 0x1010bcd0
push esi
call ebp
cmp eax, ebx
je 0x10024d82
mov ecx, dword [esp + 0x28]
lea edx, [esp + 0x249c]
push edx
push ecx
call eax
mov esi, dword [0x10135b94]
jmp 0x10024d8d
mov esi, dword [0x10135b94]
mov eax, 0xc001000c
mov dword [esp + 0x40], eax
cmp eax, ebx
je 0x10024f2e
lea edx, [esp + 0x48]
mov dword [esp + 0x48], 4
mov dword [esp + 0x44], edx
call fcn.100433c0
mov eax, dword [eax]
lea ecx, [esp + 0x44]
push ecx
lea edx, [esp + 0x20]
push edx
mov esi, eax
call fcn.10007ae0
mov ecx, dword [eax]
mov dword [esp + 0x28], ecx
mov dword [eax], ebx
mov byte [esp + 0x3158], 0x33
mov eax, dword [esp + 0x1c]
cmp eax, ebx
je 0x10024de6
push eax
call fcn.1005c230
add esp, 4
mov dword [esp + 0x1c], ebx
mov eax, dword [esp + 0x28]
cmp eax, ebx
je 0x10024ef2
lea edx, [esp + 0x40]
mov dword [esp + 0x30], edx
mov dword [esp + 0x34], 0x1002d370
mov dword [esp + 0x38], 0x1002d380
push str.DL_GetPlatformInfo_failed._0x_x_
lea eax, [esp + 0x198]
push eax
call fcn.10007580
lea ecx, [esp + 0x30]
push ecx
mov byte [esp + 0x315c], 0x34
call fcn.1000f490
add esp, 4
lea edx, [esp + 0x2254]
mov ecx, eax
call fcn.10007680
mov esi, eax
mov byte [esp + 0x3158], 0x35
call fcn.100433c0
mov eax, dword [eax]
lea edx, [esp + 0x28]
push edx
push eax
lea eax, [esp + 0x80]
push eax
call fcn.10007b90
add esp, 0xc
mov byte [esp + 0x3158], 0x36
mov ecx, dword [eax + 4]
mov ebx, dword [esi + 0x14]
add ecx, 4
cmp dword [esi + 0x18], 0x10
jb 0x10024e82
mov esi, dword [esi + 4]
jmp 0x10024e85
add esi, 4
push esi
call fcn.10008730
lea ecx, [esp + 0x78]
mov byte [esp + 0x3158], 0x35
call fcn.10005040
cmp dword [esp + 0x226c], 0x10
jb 0x10024eb6
mov ecx, dword [esp + 0x2258]
push ecx
call fcn.100b3111
add esp, 4
lea edx, [esp + 0x194]
xor ebx, ebx
push edx
mov dword [esp + 0x2270], 0xf
mov dword [esp + 0x226c], ebx
mov byte [esp + 0x225c], bl
mov byte [esp + 0x315c], 0x33
call fcn.100031a0
mov eax, dword [esp + 0x28]
cmp eax, ebx
jne 0x10024e0a
mov byte [esp + 0x3158], 9
cmp eax, ebx
je 0x10024f0b
push eax
call fcn.1005c230
add esp, 4
mov dword [esp + 0x28], ebx
mov esi, dword [esp + 0x40]
lea eax, [esp + 0x2270]
push eax
mov dword [esp + 0x315c], 0xffffffff
call fcn.1003c130
mov eax, esi
jmp 0x10025338
mov eax, dword [esp + 0x24c0]
mov edi, dword [esp + 0x4c]
mov dword [esp + 0x24], eax
cmp eax, edi
je 0x1002518b
push 0x1ff
lea ecx, [esp + 0x2f51]
push ebx
push ecx
mov byte [esp + 0x2f58], bl
call fcn.100b8cd0
add esp, 0xc
cmp esi, ebx
je 0x10024f85
push 0x1010b094
push esi
call ebp
cmp eax, ebx
je 0x10024f7f
push edi
call eax
mov esi, dword [0x10135b94]
mov edi, eax
jmp 0x10024f8a
mov esi, dword [0x10135b94]
mov edi, str.Not_Implement.
mov ebp, dword [esp + 0x24]
cmp esi, ebx
je 0x10024fa7
push 0x1010b094
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
cmp eax, ebx
je 0x10024fa7
push ebp
call eax
jmp 0x10024fac
mov eax, str.Not_Implement.
push edi
push eax
lea edx, [esp + 0x2f54]
push str.Storage_type_mismatch__n_scatter:__t_s_n_device:__t_s
push edx
call fcn.100b29c0
mov ecx, dword [esp + 0x4c]
mov edx, dword [ecx]
add esp, 0x10
lea eax, [esp + 0x2f4c]
push eax
push edx
call dword [sym.imp.FlashtoollibEx.dll__flashtool_set_last_errmsg_8]
lea eax, [esp + 0x48]
mov dword [esp + 0x48], 4
mov dword [esp + 0x44], eax
call fcn.100433c0
mov eax, dword [eax]
lea ecx, [esp + 0x44]
push ecx
lea edx, [esp + 0x20]
push edx
mov esi, eax
call fcn.10007ae0
mov ecx, dword [eax]
mov dword [esp + 0x18], ecx
mov dword [eax], ebx
mov byte [esp + 0x3158], 0x37
mov eax, dword [esp + 0x1c]
cmp eax, ebx
je 0x10025025
push eax
call fcn.1005c230
add esp, 4
mov dword [esp + 0x1c], ebx
mov eax, dword [esp + 0x18]
cmp eax, ebx
je 0x10025150
lea edx, [esp + 0x24]
mov dword [esp + 0x30], edx
mov ecx, 0x1002d530
mov eax, 0x1002d540
lea edx, [esp + 0x4c]
mov dword [esp + 0x34], ecx
mov dword [esp + 0x38], eax
mov dword [esp + 0x54], edx
mov dword [esp + 0x58], ecx
mov dword [esp + 0x5c], eax
push str.Storage_check_failed.__scatter:_x___device:0x_x__
lea eax, [esp + 0x198]
push eax
call fcn.10007580
lea ecx, [esp + 0x30]
push ecx
mov byte [esp + 0x315c], 0x38
call fcn.1000f490
lea edx, [esp + 0x58]
add esp, 4
push edx
call fcn.1000f490
add esp, 4
lea edx, [esp + 0xa8]
mov ecx, eax
call fcn.10007680
mov esi, eax
mov byte [esp + 0x3158], 0x39
call fcn.100433c0
mov eax, dword [eax]
lea ecx, [esp + 0x18]
push ecx
push eax
lea edx, [esp + 0x80]
push edx
call fcn.10007b90
add esp, 0xc
mov byte [esp + 0x3158], 0x3a
mov ecx, dword [eax + 4]
mov ebx, dword [esi + 0x14]
add ecx, 4
cmp dword [esi + 0x18], 0x10
jb 0x100250e0
mov esi, dword [esi + 4]
jmp 0x100250e3
add esi, 4
push esi
call fcn.10008730
lea ecx, [esp + 0x78]
mov byte [esp + 0x3158], 0x39
call fcn.10005040
cmp dword [esp + 0xc0], 0x10
jb 0x10025114
mov eax, dword [esp + 0xac]
push eax
call fcn.100b3111
add esp, 4
lea ecx, [esp + 0x194]
xor ebx, ebx
push ecx
mov dword [esp + 0xc4], 0xf
mov dword [esp + 0xc0], ebx
mov byte [esp + 0xb0], bl
mov byte [esp + 0x315c], 0x37
call fcn.100031a0
mov eax, dword [esp + 0x18]
cmp eax, ebx
jne 0x1002505b
mov byte [esp + 0x3158], 9
cmp eax, ebx
je 0x10025169
push eax
call fcn.1005c230
add esp, 4
mov dword [esp + 0x18], ebx
lea edx, [esp + 0x2270]
push edx
mov dword [esp + 0x315c], 0xffffffff
call fcn.1003c130
mov eax, 0xc0030006
jmp 0x10025338
lea eax, [esp + 0x2270]
push eax
mov dword [esp + 0x315c], 0xffffffff
call fcn.1003c130
xor eax, eax
jmp 0x10025338
lea ecx, [esp + 0x48]
mov dword [esp + 0x48], 4
mov dword [esp + 0x44], ecx
call fcn.100433c0
mov eax, dword [eax]
lea edx, [esp + 0x44]
push edx
lea ecx, [esp + 0x20]
push ecx
mov esi, eax
call fcn.10007ae0
mov edx, dword [eax]
mov dword [esp + 0x3c], edx
mov dword [eax], ebx
mov byte [esp + 0x3158], 0x12
mov eax, dword [esp + 0x1c]
cmp eax, ebx
je 0x100251f7
push eax
call fcn.1005c230
add esp, 4
mov dword [esp + 0x1c], ebx
mov eax, dword [esp + 0x3c]
cmp eax, ebx
je 0x10025302
lea eax, [esp + 0x2b14]
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], 0x1002d500
mov dword [esp + 0x38], ebp
push str.da_source_type:__d_NOT_support
lea ecx, [esp + 0x198]
push ecx
call fcn.10007580
lea edx, [esp + 0x30]
push edx
mov byte [esp + 0x315c], 0x13
call fcn.1000f490
add esp, 4
lea edx, [esp + 0xa8]
mov ecx, eax
call fcn.10007680
mov esi, eax
mov byte [esp + 0x3158], 0x14
call fcn.100433c0
mov eax, dword [eax]
lea ecx, [esp + 0x3c]
push ecx
push eax
lea edx, [esp + 0x80]
push edx
call fcn.10007b90
add esp, 0xc
mov byte [esp + 0x3158], 0x15
mov ecx, dword [eax + 4]
mov ebx, dword [esi + 0x14]
add ecx, 4
cmp dword [esi + 0x18], 0x10
jb 0x10025292
mov esi, dword [esi + 4]
jmp 0x10025295
add esi, 4
push esi
call fcn.10008730
lea ecx, [esp + 0x78]
mov byte [esp + 0x3158], 0x14
call fcn.10005040
cmp dword [esp + 0xc0], 0x10
jb 0x100252c6
mov eax, dword [esp + 0xac]
push eax
call fcn.100b3111
add esp, 4
lea ecx, [esp + 0x194]
xor ebx, ebx
push ecx
mov dword [esp + 0xc4], 0xf
mov dword [esp + 0xc0], ebx
mov byte [esp + 0xb0], bl
mov byte [esp + 0x315c], 0x12
call fcn.100031a0
mov eax, dword [esp + 0x3c]
cmp eax, ebx
jne 0x1002521a
mov byte [esp + 0x3158], 9
cmp eax, ebx
je 0x1002531b
push eax
call fcn.1005c230
add esp, 4
mov dword [esp + 0x3c], ebx
lea edx, [esp + 0x2270]
push edx
mov dword [esp + 0x315c], 0xffffffff
call fcn.1003c130
mov eax, 0xc0070002
mov ecx, dword [esp + 0x3150]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebp
pop ebx
mov ecx, dword [esp + 0x3138]
xor ecx, esp
call fcn.100b2691
add esp, 0x3148
ret 8