Function at 0x1008d0bb
Capabilities:
Resolve function by parsing pe exports

Disassembly:
mov eax, 0x100dd41a
call fcn.100d39f0
sub esp, 0x194
push ebx
push esi
mov esi, ecx
mov eax, 0x4000
push edi
mov dword [ebp - 0x28], esi
mov ecx, dword [esi + 4]
mov dword [ebp - 0x10], esp
cmp ecx, eax
jae 0x1008d100
xor edi, edi
push eax
mov dword [esi + 8], edi
mov ecx, esi
mov dword [esi + 0xc], edi
call fcn.1008af40
cmp dword [esi], edi
jne 0x1008d100
mov eax, 0x8007000e
jmp 0x1008df63
and byte [esi + 0x20], 0
and byte [ebp - 0x13], 0
xor edi, edi
cmp byte [esi + 0x85], 0
mov dword [ebp - 0x18], edi
mov dword [ebp - 0x60], edi
mov dword [ebp - 0x5c], edi
mov dword [ebp - 0x48], edi
mov dword [ebp - 0x44], edi
mov dword [ebp - 0x58], edi
mov dword [ebp - 0x40], edi
mov dword [ebp - 0x3c], edi
je 0x1008d521
cmp byte [esi + 0x86], 0
je 0x1008d521
mov eax, dword [esi + 0x48]
mov ecx, dword [esi + 0x4c]
add eax, 4
adc ecx, edi
push ecx
push eax
push dword [esi + 0x68]
mov ecx, esi
call fcn.1006dc5d
mov eax, dword [esi + 0x24]
and byte [esi + 0x22], 0
cmp eax, 0x6064b50
jne 0x1008d2ba
mov ecx, esi
mov byte [esi + 0x79], 1
call fcn.1006dc5d
mov edi, edx
mov ebx, eax
test edi, edi
ja 0x1008d187
jb 0x1008d39e
cmp ebx, 0x2c
jb 0x1008d39e
cmp edi, 0x40000000
jb 0x1008d19d
ja 0x1008d39e
test ebx, ebx
jae 0x1008d39e
lea eax, [ebp - 0x1a0]
push 0x2c
push eax
mov ecx, esi
call fcn.1006dc5d
push 0x30
lea eax, [ebp - 0xfc]
push 0
push eax
call sub.msvcrt.dll_memset
and byte [ebp - 0xfc], 0
add esp, 0xc
lea eax, [ebp - 0x1a0]
lea ecx, [ebp - 0xfc]
push eax
call fcn.1008a616
cmp dword [ebp - 0xf4], 0
jne 0x1008d39e
cmp dword [ebp - 0xf0], 0
jne 0x1008d39e
mov eax, dword [ebp - 0xec]
or eax, dword [ebp - 0xe8]
jne 0x1008d39e
mov eax, dword [ebp - 0xe4]
or eax, dword [ebp - 0xe0]
jne 0x1008d39e
mov eax, dword [ebp - 0xdc]
or eax, dword [ebp - 0xd8]
jne 0x1008d39e
mov eax, dword [ebp - 0xd4]
or eax, dword [ebp - 0xd0]
jne 0x1008d39e
sub ebx, 0x2c
push 0
sbb edi, 0
mov ecx, esi
push edi
push ebx
call fcn.1006dc5d
test eax, eax
jne 0x1008df63
mov ecx, esi
call fcn.1008b2bf
cmp dword [esi + 0x24], 0x7064b50
jne 0x1008d39e
lea eax, [ebp - 0x9c]
push 0x10
push eax
mov ecx, esi
call fcn.1006dc5d
cmp dword [ebp - 0x9c], 0
jne 0x1008d39e
cmp dword [ebp - 0x90], 0
jne 0x1008d39e
mov eax, dword [ebp - 0x98]
or eax, dword [ebp - 0x94]
jne 0x1008d39e
mov ecx, esi
call fcn.1008b2bf
mov eax, dword [esi + 0x24]
cmp eax, 0x6054b50
je 0x1008d2c1
jmp 0x1008d39e
cmp eax, 0x6054b50
jne 0x1008d32c
lea eax, [ebp - 0x9c]
push 0x12
push eax
mov ecx, esi
call fcn.1006dc5d
lea eax, [ebp - 0x9c]
lea ecx, [ebp - 0x88]
push eax
call fcn.1008a58f
lea ecx, [ebp - 0x88]
call fcn.1008aba6
test al, al
je 0x1008d39e
push dword [esi + 0x4c]
mov eax, dword [esi + 0x40]
mov dword [esi + 0x38], eax
mov eax, dword [esi + 0x44]
push dword [esi + 0x48]
mov ecx, esi
mov dword [esi + 0x3c], eax
mov byte [esi + 0x78], 1
push dword [esi + 0x68]
call fcn.1006dc5d
test eax, eax
jne 0x1008df63
mov ecx, esi
call fcn.1008b2bf
xor edi, edi
jmp 0x1008d554
lea ecx, [ebp - 0x174]
call fcn.1008b8fd
and byte [ebp - 0x100], 0
and dword [ebp - 4], 0
lea eax, [ebp - 0x174]
push eax
mov ecx, esi
mov byte [ebp - 4], 2
call fcn.1006dc5d
test al, al
je 0x1008d38f
lea eax, [ebp - 0x60]
mov ecx, esi
push eax
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x58]
push eax
mov dword [ebp - 4], 1
push dword [ebp + 8]
mov byte [esi + 0x78], 1
call fcn.1006dc5d
test eax, eax
mov dword [ebp - 0x18], eax
jne 0x1008d3b6
mov ecx, esi
call fcn.1008b2bf
jmp 0x1008d3b6
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x174]
call fcn.10088d3d
push 1
pop eax
jmp 0x1008df63
and dword [ebp - 4], 0
push 1
pop eax
cmp dword [ebp - 0x18], eax
je 0x1008d50d
cmp dword [ebp - 0x18], 0
je 0x1008d3e3
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x174]
call fcn.10088d3d
mov eax, dword [ebp - 0x18]
jmp 0x1008df63
mov ecx, dword [ebp + 8]
mov ebx, dword [ecx + 4]
test ebx, ebx
jne 0x1008d3f5
mov dword [ebp - 0x18], eax
jmp 0x1008d50d
mov eax, dword [esi + 0x4c]
mov edx, dword [esi + 0x3c]
mov ecx, dword [esi + 0x48]
mov edi, dword [esi + 0x38]
cmp eax, edx
jg 0x1008d417
jl 0x1008d40b
cmp ecx, edi
jae 0x1008d417
mov dword [ebp - 0x18], 1
jmp 0x1008d50d
sub ecx, edi
sbb eax, edx
or edi, 0xffffffff
cmp byte [esi + 0x7b], 0
mov dword [ebp - 0x12c], ecx
mov dword [ebp - 0x128], eax
mov dword [ebp - 0x28], edi
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x7c], edi
jne 0x1008d449
mov ecx, dword [ebp + 8]
lea edx, [ebp - 0x174]
call fcn.1008df74
jmp 0x1008d4c4
and dword [ebp - 0x1c], 0
test ebx, ebx
jbe 0x1008d40b
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x30]
mov ecx, dword [eax]
mov edx, dword [ecx + 0x20]
cmp edx, dword [ebp - 0x154]
jne 0x1008d485
mov eax, dword [ecx + 0x48]
cmp eax, dword [ebp - 0x12c]
jne 0x1008d485
mov eax, dword [ecx + 0x4c]
cmp eax, dword [ebp - 0x128]
jne 0x1008d485
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x1c], 0
je 0x1008d4a3
cmp edx, dword [ebp - 0x24]
jb 0x1008d4a3
jne 0x1008d4af
mov eax, dword [ecx + 0x4c]
cmp eax, edi
ja 0x1008d4af
jb 0x1008d4a3
mov eax, dword [ecx + 0x48]
cmp eax, dword [ebp - 0x7c]
jae 0x1008d4af
mov eax, dword [ecx + 0x48]
mov edi, dword [ecx + 0x4c]
mov dword [ebp - 0x24], edx
mov dword [ebp - 0x7c], eax
inc dword [ebp - 0x1c]
mov eax, dword [ebp + 8]
mov ecx, dword [ebp - 0x1c]
add dword [ebp - 0x30], 4
cmp ecx, dword [eax + 4]
jb 0x1008d459
mov eax, dword [ebp - 0x28]
cmp eax, 0xffffffff
je 0x1008d40b
mov ebx, dword [ebp + 8]
mov ecx, dword [ebx]
mov edx, dword [ecx + eax*4]
lea ecx, [ebp - 0x174]
call fcn.1008b95f
test al, al
je 0x1008d40b
cmp byte [esi + 0x7b], 0
mov byte [esi + 0x6c], 1
je 0x1008d4fd
mov eax, dword [ebp - 0x7c]
mov dword [esi + 0x60], eax
mov dword [esi + 0x64], edi
jmp 0x1008d50d
mov eax, dword [ebx]
mov eax, dword [eax]
mov ecx, dword [eax + 0x48]
mov dword [esi + 0x60], ecx
mov eax, dword [eax + 0x4c]
mov dword [esi + 0x64], eax
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x174]
call fcn.10088d3d
jmp 0x1008d325
lea eax, [ebp - 0x60]
mov ecx, esi
push eax
lea eax, [ebp - 0x48]
push eax
lea eax, [ebp - 0x58]
push eax
mov byte [esi + 0x78], 1
push dword [ebp + 8]
call fcn.1006dc5d
cmp eax, edi
mov dword [ebp - 0x18], eax
jne 0x1008d54b
mov ecx, esi
call fcn.1008b2bf
jmp 0x1008d554
cmp eax, 1
jne 0x1008df63
mov dword [ebp - 0x54], edi
mov dword [ebp - 0x50], edi
mov dword [ebp - 0x4c], edi
mov eax, dword [ebp + 8]
and byte [ebp - 0x1d], 0
cmp dword [ebp - 0x18], edi
mov dword [ebp - 4], 5
mov eax, dword [eax + 4]
mov dword [ebp - 0x1c], eax
je 0x1008d824
mov ecx, dword [ebp + 8]
call fcn.10089144
and byte [esi + 0x20], 0
and byte [esi + 0x7c], 0
and byte [esi + 0x7d], 0
and byte [esi + 0x7e], 0
xor ebx, ebx
mov byte [ebp - 0x13], 1
mov dword [esi + 8], ebx
mov dword [esi + 0xc], ebx
cmp byte [esi + 0x85], bl
mov dword [esi + 0x38], ebx
mov dword [esi + 0x3c], ebx
jne 0x1008d5dd
cmp byte [esi + 0x87], bl
jne 0x1008d5bc
push 1
pop edi
jmp 0x1008de50
cmp dword [esi + 0xac], ebx
jne 0x1008d5b4
push dword [esi + 0x4c]
push dword [esi + 0x48]
push ebx
mov ecx, esi
call fcn.1006dc5d
cmp eax, ebx
je 0x1008d5fc
mov edi, eax
jmp 0x1008de50
mov eax, dword [esi + 0x40]
or eax, dword [esi + 0x44]
je 0x1008d5f1
mov eax, dword [esi + 0x48]
mov dword [esi + 0x38], eax
mov eax, dword [esi + 0x4c]
mov dword [esi + 0x3c], eax
push dword [esi + 0x4c]
push dword [esi + 0x48]
push dword [esi + 0x68]
jmp 0x1008d5cb
mov dword [esi + 0x18], ebx
mov ecx, esi
mov dword [esi + 0x1c], ebx
call fcn.1008b2bf
push dword [ebp + 8]
mov ecx, esi
mov byte [esi + 0x80], 1
call fcn.1008c55b
cmp eax, ebx
jne 0x1008d5d6
mov edi, dword [esi + 0x24]
mov ebx, 0x2014b50
cmp edi, ebx
je 0x1008d6de
mov eax, dword [ebp + 8]
cmp dword [eax + 4], 0
je 0x1008d5b4
cmp edi, 0x18
mov byte [ebp - 0x11], 1
jb 0x1008d6cc
cmp edi, 0x100000
ja 0x1008d6cc
mov ecx, esi
call fcn.1006dc5d
test eax, eax
jne 0x1008d6cc
and dword [ebp - 0x2c], eax
and dword [ebp - 0x28], eax
push edi
lea ecx, [ebp - 0x2c]
mov byte [ebp - 4], 6
call fcn.1000446d
push edi
mov ecx, esi
push dword [ebp - 0x2c]
call fcn.1006dc5d
mov ecx, esi
call fcn.1008b2bf
mov eax, dword [ebp - 0x2c]
cmp dword [esi + 0x24], ebx
lea eax, [eax + edi - 0x18]
jne 0x1008d6b9
mov edx, dword [eax]
xor ecx, ecx
cmp edx, edi
jne 0x1008d6b9
mov edx, dword [eax + 4]
cmp edx, ecx
jne 0x1008d6b9
push 0x10
add eax, 8
push str.APK_Sig_Block_42
push eax
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x1008d6b9
and byte [ebp - 0x11], al
mov byte [esi + 0x7a], 1
push dword [ebp - 0x2c]
mov byte [ebp - 4], 5
call fcn.10003419
cmp byte [ebp - 0x11], 0
pop ecx
je 0x1008d6de
mov byte [esi + 0x82], 1
mov byte [esi + 0x7c], 1
xor edi, edi
jmp 0x1008de50
mov eax, dword [esi + 0x10]
mov byte [esi + 0x20], 1
mov ecx, dword [esi + 0xc]
xor edx, edx
sub eax, ecx
mov ecx, dword [esi + 0x14]
sbb ecx, edx
mov edx, dword [esi + 8]
xor edi, edi
add eax, edx
adc ecx, edi
sub eax, 4
mov ebx, dword [esi + 0x18]
mov dword [ebp - 0x40], eax
mov eax, dword [esi + 0x9c]
sbb ecx, edi
mov dword [ebp - 0x58], eax
mov eax, dword [esi + 0x1c]
mov dword [ebp - 0x3c], ecx
lea ecx, [ebp - 0x174]
mov dword [ebp - 0x30], eax
call fcn.1008b8fd
and byte [ebp - 0x100], 0
lea eax, [ebp - 0x174]
mov ecx, esi
push eax
mov byte [ebp - 4], 7
call fcn.1006dc5d
mov edi, eax
test edi, edi
jne 0x1008d7c5
lea eax, [ebp - 0x174]
lea ecx, [ebp - 0x54]
push eax
call fcn.1008e58b
mov ecx, dword [esi + 0x34]
test ecx, ecx
je 0x1008d78f
test word [ebp - 0x50], 0xfff
jne 0x1008d78f
mov eax, dword [ebp + 8]
and dword [ebp - 0x28], edi
lea edx, [ebp - 0x7c]
mov eax, dword [eax + 4]
push edx
mov dword [ebp - 0x2c], eax
mov eax, dword [esi + 0x18]
mov dword [ebp - 0x7c], eax
mov eax, dword [esi + 0x1c]
lea edx, [ebp - 0x2c]
mov dword [ebp - 0x78], eax
mov eax, dword [ecx]
push edx
push ecx
call dword [eax + 0x10]
mov edi, eax
test edi, edi
jne 0x1008d7c5
mov ecx, esi
call fcn.1008b2bf
cmp dword [esi + 0x24], 0x2014b50
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x174]
jne 0x1008d7d9
call fcn.10088d3d
lea ecx, [ebp - 0x174]
call fcn.1008b8fd
and byte [ebp - 0x100], 0
jmp 0x1008d729
lea ecx, [ebp - 0x174]
mov byte [ebp - 4], 5
call fcn.10088d3d
jmp 0x1008de50
call fcn.10088d3d
mov eax, dword [esi + 0x18]
mov ecx, dword [esi + 0x1c]
sub eax, ebx
mov edx, dword [ebp - 0x3c]
sbb ecx, dword [ebp - 0x30]
mov dword [ebp - 0x60], eax
mov eax, dword [ebp - 0x50]
mov byte [ebp - 0x1d], 1
mov dword [ebp - 0x5c], ecx
mov ecx, dword [ebp - 0x40]
sub ecx, dword [esi + 0x38]
mov dword [ebp - 0x1c], eax
sbb edx, dword [esi + 0x3c]
mov dword [ebp - 0x48], ecx
test eax, eax
mov dword [ebp - 0x44], edx
je 0x1008d824
mov eax, dword [ebp - 0x54]
mov byte [esi + 0x6c], 1
mov eax, dword [eax]
mov ecx, dword [eax + 0x48]
mov dword [esi + 0x60], ecx
mov eax, dword [eax + 0x4c]
mov dword [esi + 0x64], eax
xor edi, edi
push 0x30
lea eax, [ebp - 0xcc]
push edi
push eax
call sub.msvcrt.dll_memset
mov edx, dword [esi + 0xc]
mov eax, dword [esi + 8]
and byte [ebp - 0xcc], 0
and byte [ebp - 0x11], 0
add esp, 0xc
xor ebx, ebx
xor ecx, ecx
sub eax, edx
sbb ecx, ebx
add eax, dword [esi + 0x10]
mov dword [ebp - 0x94], edi
mov dword [ebp - 0x90], edi
adc ecx, dword [esi + 0x14]
sub eax, 4
mov dword [ebp - 0x34], eax
sbb ecx, edi
or dword [ebp - 0x28], 0xffffffff
cmp dword [esi + 0x24], 0x6064b50
mov dword [ebp - 0x30], ecx
jne 0x1008d937
mov eax, dword [esi + 0x9c]
mov ecx, esi
mov dword [ebp - 0x28], eax
mov byte [ebp - 0x11], 1
mov byte [esi + 0x79], 1
call fcn.1006dc5d
mov edi, edx
mov ebx, eax
test edi, edi
ja 0x1008d8a4
cmp ebx, 0x2c
jb 0x1008d901
cmp edi, 0x40000000
ja 0x1008d901
jb 0x1008d8b2
test ebx, ebx
jae 0x1008d901
lea eax, [ebp - 0x1a0]
push 0x2c
push eax
mov ecx, esi
call fcn.1006dc5d
lea eax, [ebp - 0x1a0]
lea ecx, [ebp - 0xcc]
push eax
call fcn.1008a616
mov eax, dword [ebp + 8]
sub ebx, 0x2c
sbb edi, 0
mov ecx, esi
push dword [eax + 4]
push edi
push ebx
call fcn.1006dc5d
test eax, eax
jne 0x1008d5d6
mov ecx, esi
call fcn.1008b2bf
cmp dword [esi + 0x24], 0x7064b50
je 0x1008d90c
xor edi, edi
mov byte [esi + 0x7c], 1
jmp 0x1008de50
lea eax, [ebp - 0x84]
push 0x10
push eax
mov ecx, esi
call fcn.1006dc5d
mov eax, dword [ebp - 0x80]
mov ecx, esi
mov dword [ebp - 0x94], eax
mov eax, dword [ebp - 0x7c]
mov dword [ebp - 0x90], eax
call fcn.1008b2bf
xor edi, edi
cmp dword [esi + 0x24], 0x6054b50
mov bl, byte [ebp - 0x11]
jne 0x1008df51
and byte [esi + 0x22], 0
lea eax, [ebp - 0x88]
push 0x12
push eax
mov ecx, esi
call fcn.1006dc5d
lea eax, [ebp - 0x88]
lea ecx, [ebp - 0x74]
push eax
call fcn.1008a58f
test bl, bl
je 0x1008d976
cmp word [ebp - 0x74], 0xffff
je 0x1008d980
movzx eax, word [ebp - 0x74]
mov dword [ebp - 0xc4], eax
test bl, bl
je 0x1008d98c
cmp word [ebp - 0x72], 0xffff
je 0x1008d996
movzx eax, word [ebp - 0x72]
mov dword [ebp - 0xc0], eax
test bl, bl
je 0x1008d9a2
cmp word [ebp - 0x70], 0xffff
je 0x1008d9b3
movzx eax, word [ebp - 0x70]
cdq
mov dword [ebp - 0xbc], eax
mov dword [ebp - 0xb8], edx
test bl, bl
je 0x1008d9bf
cmp word [ebp - 0x6e], 0xffff
je 0x1008d9d0
movzx eax, word [ebp - 0x6e]
cdq
mov dword [ebp - 0xb4], eax
mov dword [ebp - 0xb0], edx
test bl, bl
je 0x1008d9da
cmp dword [ebp - 0x6c], 0xffffffff
je 0x1008d9e9
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0xa8], edi
mov dword [ebp - 0xac], eax
test bl, bl
je 0x1008d9f3
cmp dword [ebp - 0x68], 0xffffffff
je 0x1008da02
mov eax, dword [ebp - 0x68]
mov dword [ebp - 0xa0], edi
mov dword [ebp - 0xa4], eax
mov ecx, dword [ebp - 0x60]
mov byte [ebp - 0x12], 1
cmp dword [ebp - 0xac], ecx
je 0x1008da15
and byte [ebp - 0x12], 0
test bl, bl
je 0x1008da45
mov edx, dword [ebp - 0xb4]
xor eax, eax
cmp edx, dword [ebp - 0x1c]
jne 0x1008da41
cmp dword [ebp - 0xb0], eax
jne 0x1008da41
cmp dword [ebp - 0xac], ecx
jne 0x1008da41
mov eax, dword [ebp - 0xa8]
cmp eax, dword [ebp - 0x5c]
je 0x1008da45
and byte [ebp - 0x12], 0
cmp byte [esi + 0x87], 0
je 0x1008da6f
mov eax, dword [ebp - 0xc0]
cmp dword [ebp - 0x58], eax
je 0x1008da5d
mov byte [esi + 0x7c], 1
mov ebx, dword [ebp + 8]
cmp byte [ebp - 0x12], 0
jne 0x1008dbb4
jmp 0x1008dbb0
cmp byte [ebp - 0x1d], 0
je 0x1008da5d
cmp byte [ebp - 0x12], 0
je 0x1008dbad
mov edi, dword [esi + 0x38]
mov edx, dword [esi + 0x3c]
test bl, bl
mov dword [ebp - 0x7c], edi
mov dword [ebp - 0x78], edx
je 0x1008daf6
mov eax, dword [ebp - 0x28]
cmp eax, dword [esi + 0xa8]
jne 0x1008db69
mov ecx, dword [ebp - 0x34]
mov eax, dword [ebp - 0x30]
sub ecx, dword [ebp - 0x94]
sbb eax, dword [ebp - 0x90]
cmp eax, dword [ebp - 0x30]
jg 0x1008db69
jl 0x1008dac4
cmp ecx, dword [ebp - 0x34]
ja 0x1008db69
cmp byte [ebp - 0x13], 0
je 0x1008dade
cmp eax, dword [esi + 0x4c]
jl 0x1008dade
jg 0x1008db65
cmp ecx, dword [esi + 0x48]
ja 0x1008db65
mov edx, dword [ebp - 0x40]
mov dword [esi + 0x38], ecx
sub edx, ecx
mov ecx, dword [ebp - 0x3c]
sbb ecx, eax
mov dword [esi + 0x3c], eax
mov dword [ebp - 0x48], edx
mov dword [ebp - 0x44], ecx
jmp 0x1008db69
cmp dword [ebp - 0x1c], 0
je 0x1008db69
mov eax, dword [ebp - 0x58]
cmp eax, dword [esi + 0xa8]
jne 0x1008db69
mov ecx, dword [ebp - 0x40]
mov eax, dword [ebp - 0x3c]
sub ecx, dword [ebp - 0xa4]
sbb eax, dword [ebp - 0xa0]
cmp eax, dword [ebp - 0x3c]
jg 0x1008db65
jl 0x1008db25
cmp ecx, dword [ebp - 0x40]
ja 0x1008db65
cmp byte [ebp - 0x13], 0
je 0x1008db4b
cmp eax, dword [esi + 0x4c]
jl 0x1008db4b
jg 0x1008db37
cmp ecx, dword [esi + 0x48]
jbe 0x1008db4b
sub ecx, edi
sbb eax, edx
test ecx, ecx
mov dword [ebp - 0x3c], eax
jne 0x1008db65
mov byte [esi + 0x83], 1
jmp 0x1008db69
mov dword [esi + 0x38], ecx
mov dword [esi + 0x3c], eax
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x44], eax
jmp 0x1008db69
and byte [ebp - 0x12], 0
cmp byte [ebp - 0x13], 0
je 0x1008da5d
mov edx, dword [ebp - 0x7c]
mov edi, dword [ebp - 0x78]
sub edx, dword [esi + 0x38]
sbb edi, dword [esi + 0x3c]
mov eax, edx
or eax, edi
je 0x1008da5d
mov ebx, dword [ebp + 8]
xor ecx, ecx
cmp dword [ebx + 4], ecx
jbe 0x1008da60
mov eax, dword [ebx]
mov eax, dword [eax + ecx*4]
add dword [eax + 0x48], edx
adc dword [eax + 0x4c], edi
inc ecx
cmp ecx, dword [ebx + 4]
jb 0x1008db97
jmp 0x1008da60
mov ebx, dword [ebp + 8]
mov byte [esi + 0x7c], 1
mov eax, dword [ebp - 0xc4]
cmp byte [esi + 0x87], 0
mov dword [esi + 0x8c], eax
jne 0x1008dc2a
xor edi, edi
cmp eax, edi
jne 0x1008dbf8
cmp byte [esi + 0xa6], 0
lea ecx, [esi + 0xa6]
je 0x1008dbf8
cmp byte [esi + 0xa2], 0
je 0x1008dbf8
lea eax, [esi + 0xc4]
mov dword [eax + 4], edi
mov eax, dword [eax]
mov word [eax], di
and byte [ecx], 0
cmp byte [ebp - 0x13], 0
je 0x1008dc21
cmp dword [esi + 0x8c], edi
je 0x1008dc21
xor ecx, ecx
cmp dword [ebx + 4], edi
jbe 0x1008dc21
mov eax, dword [ebx]
mov edx, dword [esi + 0x8c]
mov eax, dword [eax + ecx*4]
inc ecx
mov dword [eax + 0x20], edx
cmp ecx, dword [ebx + 4]
jb 0x1008dc0d
mov byte [esi + 0x88], 1
jmp 0x1008dc2c
xor edi, edi
cmp byte [ebp - 0x11], 0
je 0x1008dcbc
cmp dword [ebp - 0xc4], edi
jne 0x1008dc62
mov eax, dword [esi + 0x38]
mov ecx, dword [esi + 0x3c]
add eax, dword [ebp - 0x94]
adc ecx, dword [ebp - 0x90]
cmp dword [ebp - 0x34], eax
jne 0x1008df51
cmp dword [ebp - 0x30], ecx
jne 0x1008df51
mov ecx, dword [ebp - 0xb4]
xor eax, eax
cmp ecx, dword [ebp - 0x1c]
jne 0x1008df51
cmp dword [ebp - 0xb0], eax
jne 0x1008df51
mov eax, dword [ebp - 0xac]
cmp eax, dword [ebp - 0x60]
jne 0x1008df51
mov eax, dword [ebp - 0xa8]
cmp eax, dword [ebp - 0x5c]
jne 0x1008df51
mov eax, dword [ebp - 0xa4]
cmp eax, dword [ebp - 0x48]
jne 0x1008dcb3
mov eax, dword [ebp - 0xa0]
cmp eax, dword [ebp - 0x44]
je 0x1008dcbc
cmp dword [ebx + 4], edi
jne 0x1008df51
cmp byte [ebp - 0x12], 0
je 0x1008de96
cmp dword [ebp - 0x50], edi
je 0x1008de96
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x34], edi
mov dword [ebp - 0x30], edi
mov byte [ebp - 4], 8
mov dword [ebp - 0x24], edi
mov byte [esi + 0x81], 1
mov dword [ebp - 0x18], edi
jbe 0x1008de63
mov ecx, dword [esi + 0x34]
test ecx, ecx
je 0x1008dd28
test word [ebp - 0x18], 0x3fff
jne 0x1008dd28
mov eax, dword [ebp + 8]
mov edx, dword [ebp - 0x34]
and dword [ebp - 0x3c], 0
mov eax, dword [eax + 4]
add edx, eax
mov dword [ebp - 0x40], edx
mov eax, dword [ecx]
lea edx, [esi + 0x18]
push edx
lea edx, [ebp - 0x40]
push edx
push ecx
call dword [eax + 0x10]
mov edi, eax
test edi, edi
jne 0x1008de47
mov eax, dword [ebp - 0x54]
mov ecx, dword [ebp - 0x18]
or dword [ebp - 0x28], 0xffffffff
mov edi, dword [eax + ecx*4]
mov eax, dword [ebp - 0x24]
cmp eax, 0xffffffff
je 0x1008dd90
mov ecx, dword [ebp + 8]
cmp eax, dword [ecx + 4]
jae 0x1008dd90
mov ecx, dword [ecx]
mov ecx, dword [ecx + eax*4]
mov eax, dword [ecx + 0x20]
cmp eax, dword [edi + 0x20]
jne 0x1008dd84
mov edx, dword [edi + 0x48]
mov eax, dword [ecx + 0x48]
mov ebx, dword [edi + 0x4c]
cmp eax, edx
jne 0x1008dd66
mov eax, dword [ecx + 0x4c]
cmp eax, ebx
je 0x1008dd7c
cmp byte [esi + 0x83], 0
je 0x1008dd84
mov ecx, dword [ecx + 0x48]
xor eax, eax
cmp ecx, edx
jne 0x1008dd84
cmp eax, ebx
jne 0x1008dd84
mov eax, dword [ebp - 0x24]
inc dword [ebp - 0x24]
jmp 0x1008dd8b
or dword [ebp - 0x24], 0xffffffff
mov eax, dword [ebp - 0x28]
cmp eax, 0xffffffff
jne 0x1008ddc2
mov ecx, dword [ebp + 8]
mov edx, edi
call fcn.1008df74
cmp eax, 0xffffffff
jne 0x1008ddc2
push dword [ebp - 0x18]
lea ecx, [ebp - 0x38]
call fcn.1000333a
mov byte [esi + 0x7c], 1
inc dword [ebp - 0x18]
mov eax, dword [ebp - 0x18]
cmp eax, dword [ebp - 0x50]
jb 0x1008dcef
jmp 0x1008de63
mov ecx, dword [ebp + 8]
lea edx, [edi + 0x24]
mov ecx, dword [ecx]
mov ebx, dword [ecx + eax*4]
lea ecx, [ebx + 0x24]
call fcn.10068d6c
test al, al
jne 0x1008ddaa
mov eax, dword [ebx + 0x10]
cmp eax, dword [edi + 0x10]
jne 0x1008ddaa
mov eax, dword [ebx + 0x14]
cmp eax, dword [edi + 0x14]
jne 0x1008ddaa
mov eax, dword [ebx + 8]
cmp eax, dword [edi + 8]
jne 0x1008ddaa
mov eax, dword [ebx + 0xc]
cmp eax, dword [edi + 0xc]
jne 0x1008ddaa
mov edx, edi
mov ecx, ebx
call fcn.1008ba00
test al, al
je 0x1008ddaa
mov eax, dword [ebx + 0x1c]
cmp eax, dword [edi + 0x1c]
jne 0x1008ddaa
mov ax, word [edi + 0x40]
lea ecx, [ebx + 0x50]
mov word [ebx + 0x40], ax
lea eax, [edi + 0x50]
push eax
call fcn.1008ba99
mov ax, word [edi + 0x42]
lea ecx, [ebx + 0x60]
mov word [ebx + 0x42], ax
mov eax, dword [edi + 0x44]
mov dword [ebx + 0x44], eax
lea eax, [edi + 0x60]
push eax
call fcn.1002d83a
mov al, byte [edi + 0x69]
mov byte [ebx + 0x69], al
jmp 0x1008ddae
push dword [ebp - 0x38]
call fcn.10003419
pop ecx
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x54]
call fcn.100890f3
mov eax, edi
jmp 0x1008df63
xor edi, edi
cmp dword [ebp - 0x34], edi
jbe 0x1008de84
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x54]
mov eax, dword [eax + edi*4]
push dword [ecx + eax*4]
mov ecx, dword [ebp + 8]
call fcn.1008e58b
inc edi
cmp edi, dword [ebp - 0x34]
jb 0x1008de6a
push dword [ebp - 0x38]
mov byte [ebp - 4], 5
call fcn.10003419
mov ebx, dword [ebp + 8]
pop ecx
xor edi, edi
mov cx, word [ebp - 0x6e]
cmp cx, word [ebp - 0x70]
jae 0x1008dea4
mov byte [esi + 0x7c], 1
cmp word [ebp - 0x74], di
jne 0x1008deb4
cmp cx, word [ebp - 0x70]
je 0x1008deb4
mov byte [esi + 0x7c], 1
cmp byte [ebp - 0x11], 0
mov eax, dword [ebx + 4]
je 0x1008dee5
xor ecx, ecx
cmp dword [ebp - 0xb4], eax
jne 0x1008dedf
cmp dword [ebp - 0xb0], ecx
jne 0x1008dedf
movzx ecx, word [ebp - 0x6e]
cmp ecx, eax
je 0x1008df15
cmp word [ebp - 0x6e], 0xffff
je 0x1008df15
mov byte [esi + 0x7c], 1
jmp 0x1008df15
movzx ecx, cx
cmp ecx, eax
jbe 0x1008def0
mov byte [esi + 0x7c], 1
mov ecx, dword [ebp - 0x1c]
xor eax, eax
cmp dword [ebp - 0xb4], ecx
jne 0x1008df05
cmp dword [ebp - 0xb0], eax
je 0x1008df15
cmp word [ebp - 0xb4], cx
jne 0x1008dedf
mov byte [esi + 0x84], 1
movzx eax, word [ebp - 0x64]
push eax
lea eax, [esi + 0x70]
push eax
mov ecx, esi
call fcn.1008b267
mov ax, word [ebp - 0x1c]
and byte [esi + 0x20], 0
cmp word [ebp - 0xb4], ax
jne 0x1008df51
mov eax, dword [ebp - 0xac]
cmp eax, dword [ebp - 0x60]
jne 0x1008df51
mov eax, dword [ebp - 0xa4]
cmp eax, dword [ebp - 0x48]
je 0x1008df55
cmp dword [ebx + 4], edi
je 0x1008df55
mov byte [esi + 0x7c], 1
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x54]
call fcn.100890f3
xor eax, eax
mov ecx, dword [ebp - 0xc]
pop edi
pop esi
mov dword fs:[0], ecx
pop ebx
leave
ret 4