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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x3c
push ebx
push esi
mov esi, dword [ebp + 8]
mov ebx, edx
push edi
mov edi, ecx
mov dword [esp + 0x28], ebx
mov dword [esp + 0x18], edi
mov dword [esp + 0x44], 0
mov eax, dword [edi]
mov dword [esp + 0x24], eax
xor eax, eax
mov dword [esp + 0x40], eax
mov dword [esp + 0x34], eax
test esi, esi
je 0x1006a414
cmp dword [edi + 0x104], eax
jne 0x1006a414
cmp dword [esi + 0x40], eax
jne 0x1006a414
call fcn.1007f920
test eax, eax
jne 0x1006a414
cmp byte [ebx + 0x2b], 1
je 0x1006a414
cmp dword [ebp + 0xc], 0xb
jne 0x1006a0a6
cmp word [ebx + 0x20], ax
jl 0x1006a09f
movzx eax, byte [ebx + 0x2a]
mov dword [ebp + 0xc], eax
cmp eax, 0xb
jne 0x1006a0a6
mov dword [ebp + 0xc], 2
mov ecx, dword [esi + 0x20]
cmp dword [ecx], 1
jne 0x1006a414
cmp dword [ecx + 0x1c], 0
jne 0x1006a414
cmp dword [esi + 0x24], 0
jne 0x1006a414
cmp dword [esi + 0x30], 0
jne 0x1006a414
cmp dword [esi + 0x28], 0
jne 0x1006a414
cmp dword [esi + 0x3c], 0
jne 0x1006a414
cmp dword [esi + 0x34], 0
jne 0x1006a414
test byte [esi + 4], 1
jne 0x1006a414
mov eax, dword [esi + 0x1c]
cmp dword [eax], 1
jne 0x1006a414
mov eax, dword [eax + 8]
cmp byte [eax], 0xb3
jne 0x1006a414
lea eax, [ecx + 8]
xor edx, edx
push eax
mov ecx, edi
call fcn.10052960
mov edi, eax
add esp, 4
mov dword [esp + 0x14], edi
test edi, edi
je 0x1006a414
mov eax, dword [edi + 0x14]
cmp eax, dword [ebx + 0x14]
jne 0x1006a142
mov eax, dword [edi + 0x3c]
cmp eax, dword [ebx + 0x3c]
je 0x1006a414
mov esi, dword [edi + 0x1c]
mov ecx, esi
mov edx, dword [ebx + 0x1c]
mov eax, edx
shr ecx, 7
shr eax, 7
not ecx
not eax
xor ecx, eax
test cl, 1
jne 0x1006a414
cmp byte [edi + 0x2b], 0
jne 0x1006a414
movzx ecx, word [ebx + 0x22]
cmp cx, word [edi + 0x22]
jne 0x1006a414
mov ax, word [ebx + 0x20]
cmp ax, word [edi + 0x20]
jne 0x1006a414
test edx, 0x10000
je 0x1006a19b
test esi, 0x10000
je 0x1006a414
xor eax, eax
mov dword [esp + 0x30], 0
cmp ax, cx
jge 0x1006a3cf
xor ecx, ecx
mov dword [esp + 0x2c], ecx
jmp 0x1006a1ba
mov edi, dword [esp + 0x14]
mov esi, dword [ebx + 4]
mov edi, dword [edi + 4]
add esi, ecx
add edi, ecx
mov cx, word [esi + 0xe]
mov ax, word [edi + 0xe]
and cx, 0x60
and ax, 0x60
cmp cx, ax
jne 0x1006a414
test cx, cx
je 0x1006a255
movzx eax, word [esi + 0xc]
test ax, ax
jne 0x1006a1ef
xor ecx, ecx
jmp 0x1006a20f
cmp byte [ebx + 0x2b], 0
je 0x1006a1f9
xor ecx, ecx
jmp 0x1006a20f
mov ecx, dword [ebx + 0x34]
test ecx, ecx
je 0x1006a20f
cmp dword [ecx], eax
jge 0x1006a208
xor ecx, ecx
jmp 0x1006a20f
lea eax, [eax + eax*4]
mov ecx, dword [ecx + eax*4 - 0xc]
movzx eax, word [edi + 0xc]
test ax, ax
jne 0x1006a21c
xor edx, edx
jmp 0x1006a240
mov edx, dword [esp + 0x14]
cmp byte [edx + 0x2b], 0
je 0x1006a22a
xor edx, edx
jmp 0x1006a240
mov edx, dword [edx + 0x34]
test edx, edx
je 0x1006a240
cmp dword [edx], eax
jge 0x1006a239
xor edx, edx
jmp 0x1006a240
lea eax, [eax + eax*4]
mov edx, dword [edx + eax*4 - 0xc]
push 0xffffffffffffffff
push ecx
xor ecx, ecx
call fcn.100496c0
add esp, 8
test eax, eax
jne 0x1006a414
mov al, byte [esi + 8]
cmp al, byte [edi + 8]
jne 0x1006a414
movzx ecx, word [edi + 0xe]
test ecx, 0x200
jne 0x1006a271
xor ecx, ecx
jmp 0x1006a28c
mov eax, dword [edi]
cmp byte [eax], 0
je 0x1006a27e
inc eax
cmp byte [eax], 0
jne 0x1006a278
test cl, 4
je 0x1006a289
inc eax
cmp byte [eax], 0
jne 0x1006a283
lea ecx, [eax + 1]
movzx ebx, word [esi + 0xe]
test ebx, 0x200
je 0x1006a2d0
mov eax, dword [esi]
cmp byte [eax], 0
je 0x1006a2a6
nop
inc eax
cmp byte [eax], 0
jne 0x1006a2a0
test bl, 4
je 0x1006a2b6
nop dword [eax + eax]
inc eax
cmp byte [eax], 0
jne 0x1006a2b0
add eax, 1
je 0x1006a2d0
test ecx, ecx
je 0x1006a414
mov edx, ecx
mov ecx, eax
call fcn.10008d80
mov ecx, eax
jmp 0x1006a2d4
neg ecx
sbb ecx, ecx
test ecx, ecx
jne 0x1006a414
test byte [esi + 4], 0xf
je 0x1006a2ec
test byte [edi + 4], 0xf
je 0x1006a414
test bl, 0x60
jne 0x1006a3ab
cmp dword [esp + 0x30], 0
jle 0x1006a3ab
movzx eax, word [esi + 0xc]
test ax, ax
jne 0x1006a30d
xor edx, edx
jmp 0x1006a331
mov ecx, dword [esp + 0x28]
cmp byte [ecx + 0x2b], 0
je 0x1006a31b
xor edx, edx
jmp 0x1006a331
mov edx, dword [ecx + 0x34]
test edx, edx
je 0x1006a331
cmp dword [edx], eax
jge 0x1006a32a
xor edx, edx
jmp 0x1006a331
lea eax, [eax + eax*4]
mov edx, dword [edx + eax*4 - 0xc]
movzx eax, word [edi + 0xc]
test ax, ax
jne 0x1006a33e
xor esi, esi
jmp 0x1006a362
mov ecx, dword [esp + 0x14]
cmp byte [ecx + 0x2b], 0
je 0x1006a34c
xor esi, esi
jmp 0x1006a362
mov esi, dword [ecx + 0x34]
test esi, esi
je 0x1006a362
cmp dword [esi], eax
jge 0x1006a35b
xor esi, esi
jmp 0x1006a362
lea eax, [eax + eax*4]
mov esi, dword [esi + eax*4 - 0xc]
xor ecx, ecx
test esi, esi
sete cl
xor eax, eax
test edx, edx
sete al
cmp eax, ecx
jne 0x1006a414
test edx, edx
je 0x1006a3ab
mov ecx, dword [esi + 8]
mov eax, dword [edx + 8]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x1006a3a2
test dl, dl
je 0x1006a39e
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x1006a3a2
add eax, 2
add ecx, 2
test dl, dl
jne 0x1006a382
xor eax, eax
jmp 0x1006a3a7
sbb eax, eax
or eax, 1
test eax, eax
jne 0x1006a414
mov ebx, dword [esp + 0x28]
mov esi, dword [esp + 0x30]
mov ecx, dword [esp + 0x2c]
inc esi
add ecx, 0x10
mov dword [esp + 0x30], esi
movsx eax, word [ebx + 0x22]
mov dword [esp + 0x2c], ecx
cmp esi, eax
jl 0x1006a1b6
mov edi, dword [ebx + 8]
mov ecx, 1
test edi, edi
je 0x1006a454
nop dword [eax + eax]
cmp byte [edi + 0x36], 0
mov eax, dword [esp + 0x34]
cmovne eax, ecx
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x14]
mov esi, dword [eax + 8]
test esi, esi
je 0x1006a414
nop word [eax + eax]
mov edx, esi
mov ecx, edi
call fcn.10069f20
test eax, eax
jne 0x1006a41d
mov esi, dword [esi + 0x14]
test esi, esi
jne 0x1006a400
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
mov eax, dword [esi + 0x2c]
cmp eax, dword [edi + 0x2c]
jne 0x1006a448
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0x3c]
cmp eax, dword [ebx + 0x3c]
jne 0x1006a448
mov eax, dword [0x1011d1f8]
test eax, eax
je 0x1006a414
push 0x19b
call eax
add esp, 4
test eax, eax
je 0x1006a414
mov edi, dword [edi + 0x14]
mov ecx, 1
test edi, edi
jne 0x1006a3e0
mov edx, dword [ebx + 0x10]
mov esi, dword [esp + 0x14]
test edx, edx
je 0x1006a470
mov ecx, dword [esi + 0x10]
push 0xffffffffffffffff
call fcn.10049930
add esp, 4
test eax, eax
jne 0x1006a414
mov edi, dword [esp + 0x24]
mov eax, dword [edi + 0x20]
mov ecx, dword [edi + 0x24]
and eax, 0x4000
or eax, 0
je 0x1006a48a
cmp dword [ebx + 0x30], 0
jne 0x1006a414
and ecx, 1
xor eax, eax
or eax, ecx
jne 0x1006a414
mov ecx, dword [esi + 0x3c]
mov dword [esp + 0x20], 0xffff8000
test ecx, ecx
je 0x1006a4be
mov eax, dword [edi + 0x10]
xor edx, edx
add eax, 0xc
mov dword [esp + 0x20], edx
cmp dword [eax], ecx
je 0x1006a4be
lea eax, [eax + 0x10]
inc edx
cmp dword [eax], ecx
jne 0x1006a4b2
mov dword [esp + 0x20], edx
mov ecx, dword [esp + 0x18]
call fcn.10075ea0
mov edx, dword [esp + 0x20]
mov edi, eax
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x38], edi
call fcn.1005a700
mov ecx, dword [esp + 0x18]
mov edx, dword [ebp + 0x10]
push ebx
mov esi, dword [ecx + 0x28]
mov dword [esp + 0x14], esi
lea eax, [esi + 1]
mov dword [esp + 0x10], eax
inc eax
mov dword [ecx + 0x28], eax
call fcn.10065e10
mov ecx, dword [esp + 0x1c]
add esp, 4
mov dword [esp + 0x3c], eax
call fcn.1004a4a0
push eax
push 0
mov edx, 0x49
mov dword [esp + 0x34], eax
mov ecx, edi
call fcn.100293c0
mov ecx, dword [esp + 0x20]
call fcn.1004a4a0
push 0x65
push ebx
push dword [ebp + 0x10]
lea edx, [esi + 1]
mov dword [esp + 0x30], eax
call fcn.10065820
mov eax, dword [esp + 0x38]
add esp, 0x14
test byte [eax + 0x18], 4
jne 0x1006a599
cmp word [ebx + 0x20], 0
jge 0x1006a551
cmp dword [ebx + 8], 0
jne 0x1006a565
cmp dword [esp + 0x34], 0
jne 0x1006a565
mov eax, dword [ebp + 0xc]
cmp eax, 2
je 0x1006a599
cmp eax, 1
je 0x1006a599
push 0
push dword [esp + 0x10]
mov edx, 0x26
mov ecx, edi
call fcn.100293c0
add esp, 8
mov edx, 0xb
mov ecx, edi
mov esi, eax
call fcn.10029300
mov edx, esi
mov dword [esp + 0x44], eax
mov ecx, edi
call fcn.10029fc0
mov esi, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
test byte [eax + 0x1c], 0x80
jne 0x1006a771
push 0x64
push eax
push dword [esp + 0x28]
mov edx, esi
call fcn.10065820
add esp, 0xc
mov edx, 0x26
mov ecx, edi
push 0
push esi
call fcn.100293c0
add esp, 8
mov dword [esp + 0x40], eax
cmp word [ebx + 0x20], 0
jl 0x1006a646
push dword [esp + 0x1c]
mov edx, 0x85
mov ecx, edi
push esi
call fcn.100293c0
mov ebx, eax
add esp, 8
mov eax, dword [esp + 0x24]
test byte [eax + 0x18], 4
jne 0x1006a630
push dword [esp + 0x1c]
lea eax, [esi + 1]
mov edx, 0x21
push 0
push eax
mov ecx, edi
call fcn.10029290
mov edx, dword [ebp + 0xc]
add esp, 0xc
mov ecx, dword [esp + 0x18]
mov esi, eax
push dword [esp + 0x28]
call fcn.1005abd0
add esp, 4
mov edx, esi
mov ecx, edi
call fcn.10029fc0
push dword [esp + 0x1c]
mov edx, dword [esp + 0x40]
mov ecx, dword [esp + 0x1c]
call fcn.10066040
add esp, 4
jmp 0x1006a688
cmp dword [ebx + 8], 0
jne 0x1006a672
mov eax, dword [esp + 0x24]
test byte [eax + 0x18], 8
jne 0x1006a672
push dword [esp + 0x1c]
mov esi, dword [esp + 0x10]
mov edx, 0x7d
push esi
mov ecx, edi
call fcn.100293c0
add esp, 8
mov ebx, eax
jmp 0x1006a68c
push dword [esp + 0x1c]
mov edx, 0x85
mov ecx, edi
push esi
call fcn.100293c0
add esp, 8
mov ebx, eax
mov esi, dword [esp + 0xc]
mov eax, dword [esp + 0x24]
test byte [eax + 0x18], 4
je 0x1006a6ad
push esi
mov edx, 0x87
mov ecx, edi
call fcn.10029360
add esp, 4
mov esi, 0x98
jmp 0x1006a6b2
mov esi, 0xa9
push dword [esp + 0x1c]
mov edx, 0x7f
mov ecx, edi
push dword [esp + 0x14]
push dword [esp + 0x14]
call fcn.10029290
add esp, 0xc
mov edx, 0x7e
mov ecx, edi
push dword [esp + 0x1c]
push dword [esp + 0x30]
push dword [esp + 0x14]
call fcn.10029290
mov eax, dword [esp + 0x30]
add esp, 0xc
test byte [eax + 0x18], 4
jne 0x1006a72a
mov eax, dword [edi]
cmp byte [eax + 0x53], 0
jne 0x1006a72a
mov eax, dword [edi + 0x74]
lea ecx, [eax + eax*4]
mov eax, dword [edi + 0x70]
cmp byte [eax + ecx*4 - 0x13], 0
lea eax, [eax + ecx*4]
mov ecx, dword [esp + 0x28]
je 0x1006a723
push 0xfffffffffffffffa
push ecx
lea edx, [eax - 0x14]
mov ecx, edi
call fcn.1002a2c0
add esp, 8
jmp 0x1006a72a
mov dword [eax - 4], ecx
mov byte [eax - 0x13], 0xfa
mov edx, esi
mov ecx, edi
call fcn.10029fa0
push ebx
mov ebx, dword [esp + 0x14]
mov edx, 5
push ebx
call fcn.100293c0
push 0
push ebx
mov edx, 0x78
mov ecx, edi
call fcn.100293c0
lea eax, [ebx + 1]
mov edx, 0x78
push 0
push eax
mov ecx, edi
call fcn.100293c0
mov ebx, dword [esp + 0x40]
add esp, 0x18
mov esi, dword [esp + 0x14]
jmp 0x1006a79e
push dword [ebx]
mov edx, dword [ebp + 0x10]
push 1
push dword [ebx + 0x14]
call fcn.10051da0
mov esi, dword [esp + 0x20]
add esp, 0xc
mov edx, dword [esp + 0x20]
mov ecx, dword [esp + 0x18]
push dword [esi]
push 0
push dword [esi + 0x14]
call fcn.10051da0
add esp, 0xc
mov eax, dword [ebx + 8]
mov dword [esp + 0x28], eax
test eax, eax
je 0x1006acb2
nop dword [eax]
mov esi, dword [esi + 8]
mov byte [esp + 0x34], 0
test esi, esi
je 0x1006a7d8
mov edi, dword [esp + 0x28]
mov edx, esi
mov ecx, edi
call fcn.10069f20
test eax, eax
jne 0x1006a7d4
mov esi, dword [esi + 0x14]
test esi, esi
jne 0x1006a7c0
mov edi, dword [esp + 0x38]
mov ecx, dword [edi + 0x74]
mov edx, dword [esi + 0x2c]
cmp dword [edi + 0x78], ecx
jg 0x1006a7fd
push dword [esp + 0x20]
mov ecx, edi
push edx
push dword [esp + 0x18]
mov edx, 0x64
call fcn.10029250
add esp, 0xc
jmp 0x1006a82c
mov ebx, dword [esp + 0x10]
lea eax, [ecx + 1]
mov dword [edi + 0x74], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi + 0x70]
mov dword [eax + ecx*4 + 8], edx
mov edx, dword [esp + 0x20]
mov dword [eax + ecx*4], 0x64
mov dword [eax + ecx*4 + 4], ebx
mov dword [eax + ecx*4 + 0xc], edx
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esp + 0x18]
mov edx, esi
mov eax, dword [ecx + 8]
mov dword [esp + 0x3c], eax
call fcn.1005b100
mov ebx, eax
test ebx, ebx
je 0x1006a87c
mov edx, dword [esp + 0x3c]
mov eax, dword [edx]
cmp byte [eax + 0x53], 0
je 0x1006a86a
cmp dword [eax + 0x210], 0
jne 0x1006a87c
add dword [ebx], 0xffffffff
jne 0x1006a87c
mov ecx, dword [ebx + 0xc]
mov edx, ebx
call fcn.10004cc0
jmp 0x1006a87c
mov eax, dword [edx + 0x74]
lea ecx, [eax + eax*4]
mov eax, dword [edx + 0x70]
mov byte [eax + ecx*4 - 0x13], 0xf7
mov dword [eax + ecx*4 - 4], ebx
mov ebx, dword [esp + 0x28]
mov ecx, dword [edi + 0x74]
mov edx, dword [ebx + 0x2c]
cmp dword [edi + 0x78], ecx
jg 0x1006a8a4
push dword [ebp + 0x10]
mov ecx, edi
push edx
push dword [esp + 0x14]
mov edx, 0x65
call fcn.10029250
add esp, 0xc
jmp 0x1006a8d6
lea eax, [ecx + 1]
mov dword [edi + 0x74], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi + 0x70]
mov edi, dword [esp + 0xc]
mov dword [eax + ecx*4 + 8], edx
mov edx, dword [ebp + 0x10]
mov dword [eax + ecx*4 + 4], edi
mov edi, dword [esp + 0x38]
mov dword [eax + ecx*4], 0x65
mov dword [eax + ecx*4 + 0xc], edx
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [esp + 0x18]
mov edx, ebx
mov eax, dword [ecx + 8]
mov dword [esp + 0x3c], eax
call fcn.1005b100
mov ebx, eax
test ebx, ebx
je 0x1006a926
mov edx, dword [esp + 0x3c]
mov eax, dword [edx]
cmp byte [eax + 0x53], 0
je 0x1006a914
cmp dword [eax + 0x210], 0
jne 0x1006a926
add dword [ebx], 0xffffffff
jne 0x1006a926
mov ecx, dword [ebx + 0xc]
mov edx, ebx
call fcn.10004cc0
jmp 0x1006a926
mov eax, dword [edx + 0x74]
lea ecx, [eax + eax*4]
mov eax, dword [edx + 0x70]
mov byte [eax + ecx*4 - 0x13], 0xf7
mov dword [eax + ecx*4 - 4], ebx
mov edx, dword [edi + 0x74]
mov dword [esp + 0x30], edx
test edx, edx
jle 0x1006a948
mov eax, dword [edi + 0x70]
lea ecx, [edx + edx*4]
mov edx, 1
mov word [eax + ecx*4 - 0x12], dx
mov edx, dword [edi + 0x74]
mov dword [esp + 0x30], edx
cmp dword [edi + 0x78], edx
jg 0x1006a96a
push 0
push 0
push dword [esp + 0x18]
mov edx, 0x26
mov ecx, edi
call fcn.10029250
add esp, 0xc
mov dword [esp + 0x30], eax
jmp 0x1006a99d
lea eax, [edx + 1]
mov dword [edi + 0x74], eax
lea ecx, [edx + edx*4]
mov eax, dword [edi + 0x70]
mov edx, dword [esp + 0x10]
mov dword [eax + ecx*4], 0x26
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x24]
test byte [eax + 0x18], 4
je 0x1006aa96
movzx eax, word [esi + 0x34]
xor ebx, ebx
mov dword [esp + 0x3c], eax
test eax, eax
je 0x1006a9e0
mov esi, dword [esi + 0x20]
nop dword [eax]
mov edx, dword [esi]
test edx, edx
je 0x1006a9e0
mov ecx, str.BINARY
call fcn.10008d80
test eax, eax
mov eax, dword [esp + 0x3c]
jne 0x1006a9e0
inc ebx
add esi, 4
cmp ebx, eax
jl 0x1006a9c0
cmp ebx, eax
jne 0x1006aabc
mov ecx, dword [edi + 0x74]
mov bl, 0x90
cmp dword [edi + 0x78], ecx
jg 0x1006aa0f
push 0
push 0
push dword [esp + 0x14]
mov edx, 0x87
mov ecx, edi
call fcn.10029250
mov edx, dword [esp + 0x18]
add esp, 0xc
jmp 0x1006aa42
mov edx, dword [esp + 0xc]
lea eax, [ecx + 1]
mov dword [edi + 0x74], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi + 0x70]
mov dword [eax + ecx*4], 0x87
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [edi + 0x74]
mov esi, dword [esp + 0x10]
cmp dword [edi + 0x78], ecx
jg 0x1006aa66
push 0
push esi
push edx
mov edx, 0x7f
mov ecx, edi
call fcn.10029250
add esp, 0xc
jmp 0x1006ab13
lea eax, [ecx + 1]
mov dword [edi + 0x74], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi + 0x70]
mov dword [eax + ecx*4], 0x7f
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], esi
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
jmp 0x1006ab16
mov eax, dword [esp + 0x14]
mov ebx, dword [esp + 0x34]
test byte [eax + 0x1c], 0x80
je 0x1006aac0
mov eax, dword [esp + 0x28]
movzx ebx, bl
mov al, byte [eax + 0x38]
and al, 3
cmp al, 2
mov eax, 1
cmove ebx, eax
jmp 0x1006aac0
mov ebx, dword [esp + 0x34]
mov ecx, dword [edi + 0x74]
mov esi, dword [esp + 0x10]
cmp dword [edi + 0x78], ecx
jg 0x1006aae4
push 1
push dword [esp + 0x30]
mov edx, 0x84
mov ecx, edi
push esi
call fcn.10029250
add esp, 0xc
jmp 0x1006ab13
mov edx, dword [esp + 0x2c]
lea eax, [ecx + 1]
mov dword [edi + 0x74], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi + 0x70]
mov dword [eax + ecx*4], 0x84
mov dword [eax + ecx*4 + 4], esi
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 1
mov dword [eax + ecx*4 + 0x10], 0
lea edx, [esi + 1]
mov ecx, dword [edi + 0x74]
cmp dword [edi + 0x78], ecx
jg 0x1006ab36
push 0
push dword [esp + 0x30]
mov ecx, edi
push edx
mov edx, 0x88
call fcn.10029250
add esp, 0xc
jmp 0x1006ab69
mov esi, dword [esp + 0x10]
lea eax, [ecx + 1]
mov dword [edi + 0x74], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi + 0x70]
mov dword [eax + ecx*4 + 4], edx
mov edx, dword [esp + 0x2c]
mov dword [eax + ecx*4], 0x88
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [edi + 0x74]
test ecx, ecx
jle 0x1006ab84
mov eax, dword [edi + 0x70]
lea ecx, [ecx + ecx*4]
or bl, 8
movzx edx, bl
mov word [eax + ecx*4 - 0x12], dx
mov ecx, dword [edi + 0x74]
mov ebx, dword [esp + 0x30]
lea edx, [ebx + 1]
cmp dword [edi + 0x78], ecx
jg 0x1006aba5
push 0
push edx
push esi
mov edx, 5
mov ecx, edi
call fcn.10029250
add esp, 0xc
jmp 0x1006abd4
mov ebx, dword [esp + 0x30]
lea eax, [ecx + 1]
mov dword [edi + 0x74], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi + 0x70]
mov dword [eax + ecx*4], 5
mov dword [eax + ecx*4 + 4], esi
mov dword [eax + ecx*4 + 8], edx
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [edi]
mov edx, dword [edi + 0x74]
cmp byte [eax + 0x53], 0
je 0x1006abe6
mov eax, 0x1011f1ec
jmp 0x1006abf7
test ebx, ebx
lea eax, [edx - 1]
cmovns eax, ebx
lea ecx, [eax + eax*4]
mov eax, dword [edi + 0x70]
lea eax, [eax + ecx*4]
mov dword [eax + 8], edx
mov ecx, dword [edi + 0x74]
cmp dword [edi + 0x78], ecx
jg 0x1006ac18
push 0
push 0
push esi
mov edx, 0x78
mov ecx, edi
call fcn.10029250
add esp, 0xc
jmp 0x1006ac47
lea eax, [ecx + 1]
mov dword [edi + 0x74], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi + 0x70]
mov dword [eax + ecx*4], 0x78
mov dword [eax + ecx*4 + 4], esi
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov ecx, dword [edi + 0x74]
cmp dword [edi + 0x78], ecx
jg 0x1006ac68
push 0
push 0
push dword [esp + 0x14]
mov edx, 0x78
mov ecx, edi
call fcn.10029250
add esp, 0xc
jmp 0x1006ac9b
mov edx, dword [esp + 0xc]
lea eax, [ecx + 1]
mov dword [edi + 0x74], eax
lea ecx, [ecx + ecx*4]
mov eax, dword [edi + 0x70]
mov dword [eax + ecx*4], 0x78
mov dword [eax + ecx*4 + 4], edx
mov dword [eax + ecx*4 + 8], 0
mov dword [eax + ecx*4 + 0xc], 0
mov dword [eax + ecx*4 + 0x10], 0
mov eax, dword [esp + 0x28]
mov esi, dword [esp + 0x14]
mov eax, dword [eax + 0x14]
mov dword [esp + 0x28], eax
test eax, eax
jne 0x1006a7b0
mov eax, dword [esp + 0x40]
test eax, eax
je 0x1006acc3
mov edx, eax
mov ecx, edi
call fcn.10029fc0
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
call fcn.1004a4c0
mov edx, dword [esp + 0x2c]
call fcn.1004a4c0
mov esi, dword [esp + 0x44]
test esi, esi
je 0x1006ad23
cmp dword [ecx + 0x70], 0
je 0x1006acec
call fcn.100660b0
push 0
push 0
mov edx, 0x45
mov ecx, edi
call fcn.100293c0
mov edx, esi
mov ecx, edi
call fcn.10029fc0
push 0
push dword [esp + 0x18]
mov edx, 0x78
mov ecx, edi
call fcn.100293c0
add esp, 0x10
xor eax, eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
pop edi
pop esi
mov eax, 1
pop ebx
mov esp, ebp
pop ebp
ret