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

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x20c
mov eax, dword [0x10052004]
xor eax, esp
mov dword [esp + 0x208], eax
mov eax, dword [ebp + 0x14]
push ebx
push esi
mov esi, ecx
mov dword [esp + 0x54], eax
push edi
mov edi, dword [ebp + 8]
mov dword [esp + 0x30], esi
mov dword [esp + 0x3c], edi
mov dword [esp + 0x14], 0
cmp edi, dword [esi + 0x14]
jae 0x100358f4
mov ecx, dword [esi + 8]
test ecx, ecx
je 0x1001f9a1
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0xf80]
mov eax, dword [eax]
add eax, ecx
je 0x1001f9a1
mov ecx, dword [esi + 8]
test ecx, ecx
je 0x100358fe
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0xf80]
mov eax, dword [eax]
add eax, ecx
lea edx, [edi*4]
mov ecx, dword [edx + eax]
test ecx, ecx
je 0x1001f9a1
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0xf80]
mov eax, dword [eax]
add eax, ecx
je 0x1001f9a1
mov ecx, dword [esi + 8]
test ecx, ecx
je 0x10035905
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0xf80]
mov eax, dword [eax]
add eax, ecx
mov ecx, dword [edx + eax]
test ecx, ecx
je 0x10035d35
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0xf80]
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [ebp + 0xc]
mov dword [esp + 0x10], ebx
mov dword [esp + 0x40], ecx
test ebx, ebx
je 0x10035d35
inc dword [ebx + 0x1c]
lea edi, [ebx + 0x1c]
test cl, 1
jne 0x1001f849
or ecx, 0x10000000
lea eax, [ebx + 0x20]
or dword [ebx + 0x18], ecx
mov ecx, dword [esp + 0x58]
mov dword [ecx], eax
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x214]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.100281a0
mov esp, ebp
pop ebp
ret 0x10
test byte [ebx + 0x18], 1
jne 0x1001f81c
cmp dword [esp + 0x14], 0x302ff
je 0x1001f81c
mov eax, dword [esi + 4]
mov edx, dword [ebx + 0x14]
mov dword [esp + 0x3c], eax
test eax, eax
je 0x10035d3f
mov eax, dword fs:[0x18]
mov ebx, dword [esp + 0x10]
mov eax, dword [eax + 0xf80]
mov eax, dword [eax]
add eax, dword [esp + 0x3c]
cmp edx, 0xfffffffe
je 0x10020157
cmp edx, dword [eax + 0x288]
jae 0x10020157
mov eax, dword [eax + 0x264]
mov dword [esp + 0x3c], eax
test eax, eax
je 0x10035d46
mov eax, dword fs:[0x18]
mov ebx, dword [esp + 0x10]
mov eax, dword [eax + 0xf80]
mov ecx, dword [eax]
add ecx, dword [esp + 0x3c]
lea eax, [esp + 0x60]
push eax
push edx
call fcn.1001d960
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x14], eax
test eax, eax
js 0x10035d6f
cmp dword [esp + 0x60], 0xffffffff
je 0x10035d4d
mov eax, 1
mov dword [esp + 0x14], eax
test eax, eax
js 0x10035d6f
cmp eax, 1
jne 0x1001f81c
mov edx, dword [esi]
test edx, edx
je 0x10035d5a
mov eax, dword fs:[0x18]
mov ebx, dword [esp + 0x10]
mov eax, dword [eax + 0xf80]
mov ecx, dword [eax]
add ecx, edx
push 0xfffffffffffffffe
push ebx
call fcn.1001a310
mov edx, dword [esi + 4]
mov eax, dword [ebx + 0xc]
mov ecx, dword [ebx + 8]
mov dword [esp + 0x3c], eax
mov dword [esp + 0x30], ecx
test edx, edx
je 0x10035d61
mov eax, dword fs:[0x18]
mov ebx, dword [esp + 0x10]
mov eax, dword [eax + 0xf80]
mov ecx, dword [eax]
mov eax, dword [esp + 0x3c]
add ecx, edx
lea edx, [esp + 0x50]
push edx
push eax
push dword [esp + 0x38]
call fcn.100150c0
mov dword [esp + 0x14], eax
test eax, eax
js 0x10035d6f
mov edx, dword [esi]
test edx, edx
je 0x10035d68
mov eax, dword fs:[0x18]
mov ebx, dword [esp + 0x10]
mov eax, dword [eax + 0xf80]
mov ecx, dword [eax]
add ecx, edx
push dword [esp + 0x50]
push ebx
call fcn.1001a310
mov ecx, dword [esp + 0x40]
jmp 0x1001f81c
mov eax, dword [ebp + 0xc]
mov dword [esp + 0x40], eax
test al, 2
jne 0x100200cb
mov ecx, dword [esi]
test ecx, ecx
je 0x1003591a
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0xf80]
mov edx, dword [eax]
add edx, ecx
mov ecx, dword [edx + 0x18]
mov eax, dword [esi + 0x10]
mov dword [esp + 0x2c], edx
mov dword [esp + 0x28], eax
mov dword [esp + 0x10], 0
test ecx, ecx
je 0x10035921
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0xf80]
mov ebx, dword [eax]
add ebx, ecx
mov dword [esp + 0x24], ebx
mov dword [esp + 0x18], ebx
mov ecx, dword [ebx + 0x10]
test ecx, ecx
jne 0x100200ae
xor eax, eax
cmp eax, esi
je 0x100201a7
mov ecx, dword [ebx]
test ecx, ecx
je 0x10035928
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0xf80]
mov ebx, dword [eax]
add ebx, ecx
mov ecx, dword [edx + 0x18]
mov dword [esp + 0x24], ebx
mov dword [esp + 0x18], ebx
test ecx, ecx
je 0x1003592f
mov eax, dword fs:[0x18]
mov ebx, dword [esp + 0x24]
mov dword [esp + 0x18], ebx
mov eax, dword [eax + 0xf80]
mov eax, dword [eax]
add eax, ecx
cmp ebx, eax
jne 0x1001fa00
lea eax, [esp + 0x24]
mov ecx, edx
push eax
call fcn.1001a250
mov ebx, eax
mov dword [esp + 0x14], ebx
test ebx, ebx
js 0x10035abc
mov eax, dword fs:[0x18]
mov ebx, dword [esp + 0x24]
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x18], ebx
mov ecx, dword [eax + 0xf80]
mov eax, esi
sub eax, dword [ecx]
mov dword [ebx + 0x10], eax
mov eax, dword [esp + 0x28]
mov dword [ebx + 8], eax
mov dword [ebx + 0xc], edi
mov dword [ebx + 0x14], 0xfffffffe
mov eax, dword [edx + 0x1c]
mov dword [esp + 0x20], eax
test eax, eax
je 0x10035948
mov eax, dword fs:[0x18]
mov ebx, dword [esp + 0x24]
mov dword [esp + 0x18], ebx
mov eax, dword [eax + 0xf80]
mov ecx, dword [eax]
add ecx, dword [esp + 0x20]
mov eax, dword [ebx]
mov dword [esp + 0x20], eax
test eax, eax
je 0x1003594f
mov eax, dword fs:[0x18]
mov ebx, dword [esp + 0x24]
mov dword [esp + 0x18], ebx
mov eax, dword [eax + 0xf80]
mov eax, dword [eax]
add eax, dword [esp + 0x20]
cmp ebx, ecx
je 0x10035956
cmp eax, ecx
je 0x10020216
cmp dword [eax + 0x14], 0xfffffffe
jb 0x10035960
mov ecx, dword [ebx + 4]
test ecx, ecx
je 0x10035981
mov eax, dword fs:[0x18]
mov ebx, dword [esp + 0x24]
mov dword [esp + 0x18], ebx
mov eax, dword [eax + 0xf80]
mov eax, dword [eax]
add eax, ecx
cmp dword [eax + 0x14], 0xfffffffe
ja 0x10035960
mov dword [esp + 0x10], ebx
mov eax, dword [esp + 0x14]
test eax, eax
js 0x10035ccc
inc dword [ebx + 0x1c]
cmp eax, 0x30400
je 0x10035ccc
mov ecx, dword [ebp + 0x10]
cmp ecx, 0xfffffffe
jne 0x1001fd40
mov edx, dword [esi + 4]
test edx, edx
je 0x10035ac9
mov eax, dword fs:[0x18]
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x18], ebx
mov eax, dword [eax + 0xf80]
mov ecx, dword [eax]
add ecx, edx
mov edx, dword [esp + 0x28]
xor eax, eax
add edx, 5
mov dword [esp + 0x14], eax
mov dword [esp + 0x44], 0xfffffffe
cmp edx, 3
ja case.default.0x1001fbab
jmp dword [edx*4 + 0x10020270]
cmp dword [esp + 0x28], 0xfffffffd
jne 0x1002019c
add ecx, 0x384
mov edx, dword [ecx + 0x6c]
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x4c], 0xffffffff
mov dword [esp + 0x38], 0xfffffffe
mov dword [esp + 0x48], 0xffffffff
mov dword [esp + 0x44], 0xfffffffe
test edx, edx
jne 0x10035ae6
mov edx, dword [ecx + 0x70]
test edx, edx
je 0x10035b56
mov eax, dword fs:[0x18]
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x18], ebx
mov eax, dword [eax + 0xf80]
mov eax, dword [eax]
add eax, edx
lea edx, [eax + 0x23c]
mov dword [esp + 0x28], edx
movzx eax, word [ecx + 0x78]
xor edx, edx
cmp dx, ax
jb 0x100201b5
mov edx, dword [ecx + 0x6c]
mov dword [esp + 0x14], 0
test edx, edx
jne 0x10035b5d
mov edx, dword [ecx + 0x70]
test edx, edx
je 0x10035bb7
mov eax, dword fs:[0x18]
mov ebx, dword [esp + 0x10]
mov eax, dword [eax + 0xf80]
mov eax, dword [eax]
add eax, edx
push dword [ecx + 0x74]
mov ecx, eax
call fcn.1001508b
mov edx, eax
mov eax, dword [esp + 0x14]
test eax, eax
js 0x10035c13
xor ecx, ecx
mov dword [esp + 0x20], ecx
lea eax, [esp + 0x34]
push eax
mov eax, edi
sub eax, ecx
mov ecx, dword [esp + 0x2c]
inc eax
push eax
push edx
push 0
lea eax, [esp + 0x90]
push eax
call fcn.1001c8d0
mov dword [esp + 0x14], eax
test eax, eax
js 0x10035c13
lea esp, [esp]
mov eax, dword [esp + 0x34]
cmp eax, 0x20
ja 0x10035bbe
lea eax, [eax + eax*2]
mov ecx, dword [esp + eax*4 + 0x74]
lea edx, [esp + eax*4 + 0x74]
add ecx, dword [esp + 0x20]
mov eax, edi
sub eax, ecx
mov dword [esp + 0x34], edx
add eax, dword [edx + 4]
mov dword [edx], ecx
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x44], eax
cmp word [ecx + 0x7a], 9
jae 0x10020257
movzx edi, word [ecx + 0x7a]
lea eax, [edi + edi*2]
inc edi
lea edx, [ecx + eax*4]
mov ecx, dword [esp + 0x34]
mov eax, dword [ecx]
mov dword [edx], eax
mov eax, dword [ecx + 8]
mov ecx, dword [ecx + 4]
mov dword [edx + 8], eax
mov eax, dword [esp + 0x1c]
mov dword [edx + 4], ecx
movzx ecx, word [eax + 0x78]
inc word [eax + 0x7a]
cmp ecx, edi
jg 0x1001fd1d
mov ecx, edi
inc word [eax + 0x7c]
mov word [eax + 0x78], cx
mov eax, dword [esp + 0x14]
test eax, eax
js 0x10035c13
mov ecx, dword [esp + 0x44]
mov dword [ebp + 0x10], ecx
test eax, eax
js 0x10035ccc
mov edi, dword [esp + 0x2c]
lea eax, [ebx + 0x14]
mov dword [esp + 0x18], eax
mov dword [eax], ecx
mov eax, dword [edi + 0x1c]
mov dword [esp + 0x30], eax
test eax, eax
je 0x10035c1c
mov eax, dword fs:[0x18]
mov ebx, dword [esp + 0x10]
mov eax, dword [eax + 0xf80]
mov edx, dword [eax]
add edx, dword [esp + 0x30]
mov eax, dword [ebx]
mov dword [esp + 0x28], eax
test eax, eax
je 0x10035c23
mov eax, dword fs:[0x18]
mov ebx, dword [esp + 0x10]
mov eax, dword [eax + 0xf80]
mov eax, dword [eax]
add eax, dword [esp + 0x28]
cmp ebx, edx
je 0x10035c2a
cmp eax, edx
je 0x1001fda7
cmp ecx, dword [eax + 0x14]
ja 0x1001fdcf
mov edx, dword [ebx + 4]
test edx, edx
je 0x10035c38
mov eax, dword fs:[0x18]
mov ebx, dword [esp + 0x10]
mov eax, dword [eax + 0xf80]
mov eax, dword [eax]
add eax, edx
cmp ecx, dword [eax + 0x14]
jae 0x1001ff5c
mov eax, dword [edi + 0x1c]
mov dword [esp + 0x30], eax
test eax, eax
je 0x10035c3f
mov eax, dword fs:[0x18]
mov ebx, dword [esp + 0x10]
mov eax, dword [eax + 0xf80]
mov edx, dword [eax]
add edx, dword [esp + 0x30]
mov dword [esp + 0x1c], edx
cmp edx, ebx
je 0x10035c46
mov edi, dword [ebx + 4]
lea eax, [ebx + 4]
mov dword [esp + 0x28], eax
test edi, edi
je 0x10035c85
mov eax, dword fs:[0x18]
mov ebx, dword [esp + 0x10]
mov eax, dword [eax + 0xf80]
mov eax, dword [eax]
add eax, edi
mov dword [esp + 0x34], eax
mov edi, dword [esp + 0x34]
mov eax, dword [ebx]
mov dword [edi], eax
mov eax, dword [ebx]
mov dword [esp + 0x30], eax
test eax, eax
je 0x10035c92
mov eax, dword fs:[0x18]
mov ebx, dword [esp + 0x10]
mov eax, dword [eax + 0xf80]
mov edi, dword [eax]
add edi, dword [esp + 0x30]
mov eax, dword [esp + 0x28]
mov eax, dword [eax]
mov dword [edi + 4], eax
mov eax, dword [esp + 0x28]
mov edi, dword [esp + 0x2c]
mov dword [ebx], 0
mov dword [eax], 0
mov eax, edx
cmp ecx, dword [edx + 0x14]
jbe 0x1001fea3
lea ebx, [ebx]
mov ebx, dword [eax]
test ebx, ebx
je 0x10035c99
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0xf80]
mov eax, dword [eax]
add eax, ebx
cmp eax, edx
je 0x1001fea3
cmp ecx, dword [eax + 0x14]
ja 0x1001fe80
mov edx, dword [eax + 4]
lea ecx, [eax + 4]
mov dword [esp + 0x20], ecx
test edx, edx
je 0x10035ca0
mov ecx, dword fs:[0x18]
mov ecx, dword [ecx + 0xf80]
mov ebx, dword [ecx]
add ebx, edx
mov ecx, dword fs:[0x18]
mov edx, dword [esp + 0x10]
mov ecx, dword [ecx + 0xf80]
sub edx, dword [ecx]
mov ecx, dword [esp + 0x20]
mov dword [ebx], edx
mov edx, dword [ecx]
test edx, edx
je 0x10035ca7
mov ecx, dword fs:[0x18]
mov ecx, dword [ecx + 0xf80]
mov ecx, dword [ecx]
add ecx, edx
je 0x10035ca7
mov edx, dword fs:[0x18]
mov edx, dword [edx + 0xf80]
sub ecx, dword [edx]
mov edx, dword [esp + 0x28]
mov dword [edx], ecx
test eax, eax
je 0x10035cae
mov ecx, dword fs:[0x18]
mov ecx, dword [ecx + 0xf80]
sub eax, dword [ecx]
mov ecx, dword [esp + 0x10]
mov dword [ecx], eax
mov eax, dword fs:[0x18]
mov ebx, dword [esp + 0x10]
mov ecx, dword [eax + 0xf80]
mov eax, ebx
sub eax, dword [ecx]
mov ecx, dword [esp + 0x20]
mov dword [ecx], eax
mov ecx, dword [esp + 0x1c]
mov eax, dword [ebp + 0x10]
cmp eax, dword [ecx + 0x14]
jbe 0x10020180
mov ecx, dword [ebx + 0x10]
test ecx, ecx
je 0x10035cb5
mov eax, dword fs:[0x18]
mov ebx, dword [esp + 0x10]
mov eax, dword [eax + 0xf80]
mov eax, dword [eax]
add eax, ecx
mov ecx, dword [eax + 4]
test ecx, ecx
je 0x10035ce7
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0xf80]
mov ebx, dword [eax]
add ebx, ecx
je 0x10035ce3
mov eax, dword [esp + 0x18]
xor edx, edx
movzx ecx, word [ebx + 0x4c2]
mov eax, dword [eax]
inc eax
call fcn.10028ac0
mov edi, dword [ebx]
mov dword [esp + 0x30], eax
test edi, edi
je 0x10035cbc
mov ecx, dword fs:[0x18]
mov ecx, dword [ecx + 0xf80]
mov ecx, dword [ecx]
add ecx, edi
mov ebx, dword [esp + 0x10]
lea eax, [esp + 0x54]
mov ecx, dword [ecx]
push eax
mov eax, dword [esp + 0x30]
mov edi, dword [ecx]
push dword [eax + 4]
lea eax, [ebx + 0x20]
mov edi, dword [edi + 0xc]
push eax
push edx
push dword [esp + 0x40]
push ecx
mov ecx, edi
call dword [0x100532e8]
call edi
mov dword [esp + 0x14], eax
cmp eax, 0x8000000a
je 0x10035cc3
mov edi, dword [esp + 0x2c]
test eax, eax
js 0x10020023
mov eax, dword [esp + 0x54]
cmp eax, dword [edi + 4]
jne 0x10035cd5
mov eax, dword [esp + 0x14]
test ebx, ebx
je 0x10020032
test eax, eax
js 0x10035cf5
dec dword [ebx + 0x1c]
test eax, eax
js 0x1001f832
mov ecx, dword [ebp + 0xc]
mov edi, dword [esp + 0x3c]
mov edx, dword [esi + 8]
test edx, edx
je 0x1001f809
mov eax, dword fs:[0x18]
mov ebx, dword [esp + 0x10]
mov eax, dword [eax + 0xf80]
mov eax, dword [eax]
add eax, edx
je 0x1001f809
test ebx, ebx
je 0x10035d27
mov eax, dword fs:[0x18]
mov ebx, dword [esp + 0x10]
mov ecx, dword [eax + 0xf80]
mov eax, ebx
sub eax, dword [ecx]
mov edx, dword [esi + 8]
test edx, edx
je 0x10035d2e
mov ecx, dword fs:[0x18]
mov ebx, dword [esp + 0x10]
mov ecx, dword [ecx + 0xf80]
mov ecx, dword [ecx]
add ecx, edx
mov dword [ecx + edi*4], eax
mov ecx, dword [esp + 0x40]
jmp 0x1001f809
mov eax, dword fs:[0x18]
mov ebx, dword [esp + 0x24]
mov dword [esp + 0x18], ebx
mov eax, dword [eax + 0xf80]
mov eax, dword [eax]
add eax, ecx
jmp 0x1001fa0d
mov edx, dword [esi]
test edx, edx
je 0x1003590c
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0xf80]
mov ecx, dword [eax]
add ecx, edx
lea eax, [esp + 0x10]
push eax
call fcn.1001a250
test eax, eax
js 0x1001f832
mov eax, dword fs:[0x18]
mov ebx, dword [esp + 0x10]
mov ecx, dword [eax + 0xf80]
mov eax, esi
sub eax, dword [ecx]
mov dword [ebx + 0x10], eax
mov eax, dword [esi + 0x10]
mov dword [ebx + 8], eax
mov dword [ebx + 0xc], edi
mov edx, dword [esi]
test edx, edx
je 0x10035913
mov eax, dword fs:[0x18]
mov ebx, dword [esp + 0x10]
mov eax, dword [eax + 0xf80]
mov ecx, dword [eax]
add ecx, edx
push 0xfffffffffffffffe
push ebx
call fcn.1001a310
mov ecx, dword [ebp + 0xc]
and ecx, 0xfffffffd
mov dword [esp + 0x14], 0x302ff
or ecx, 1
mov dword [esp + 0x40], ecx
jmp 0x10020041
xor eax, eax
jmp 0x1001f8e9
lea eax, [esp + 0x44]
add ecx, 0x298
push eax
push edi
call fcn.10020cf5
mov dword [esp + 0x14], eax
test eax, eax
jns case.default.0x1001fbab
jmp 0x10035c13
mov eax, dword fs:[0x18]
mov ebx, dword [esp + 0x10]
mov ecx, dword [eax + 0xf80]
mov eax, ebx
sub eax, dword [ecx]
mov dword [edi + 0x1c], eax
jmp 0x1001ff5c
add ecx, 0x404
jmp 0x1001fbc3
cmp dword [ebx + 0xc], edi
jne 0x1001fa15
jmp 0x10035936
mov esi, ecx
mov ebx, eax
lea esp, [esp]
lea eax, [esp + 0x48]
push eax
lea eax, [esp + 0x3c]
push eax
lea eax, [esp + 0x54]
push eax
mov eax, dword [esi]
sub esp, 0xc
mov ecx, esp
push edi
mov dword [ecx], eax
mov eax, dword [esi + 4]
mov dword [ecx + 4], eax
mov eax, dword [esi + 8]
mov dword [ecx + 8], eax
call fcn.1001434b
lea esi, [esi + 0xc]
sub ebx, 1
jne 0x100201c0
cmp dword [esp + 0x4c], ebx
mov esi, dword [esp + 0x30]
mov ebx, dword [esp + 0x18]
je 0x10020244
mov ecx, dword [esp + 0x48]
mov dword [esp + 0x20], ecx
cmp ecx, 0xffffffff
je 0x10020266
mov edx, dword [esp + 0x38]
jmp 0x1001fc7e
mov ecx, dword [ebx + 4]
test ecx, ecx
je 0x10020262
mov eax, dword fs:[0x18]
mov ebx, dword [esp + 0x24]
mov dword [esp + 0x18], ebx
mov eax, dword [eax + 0xf80]
mov eax, dword [eax]
add eax, ecx
cmp dword [eax + 0x14], 0xfffffffe
jbe 0x1001fb40
jmp 0x10035960
mov eax, dword [esp + 0x38]
mov dword [esp + 0x44], eax
xor eax, eax
mov dword [esp + 0x14], eax
jmp case.default.0x1001fbab
xor eax, eax
mov word [ecx + 0x7a], ax
jmp 0x1001fcec
xor eax, eax
jmp 0x10020235
mov ecx, dword [esp + 0x1c]
jmp 0x1001fc2e
mov eax, 0x80030109
jmp 0x1001f832
xor eax, eax
jmp 0x1001f7a0
xor eax, eax
jmp 0x1001f7e3
xor ecx, ecx
jmp 0x100200e5
xor ecx, ecx
jmp 0x10020135
xor edx, edx
jmp 0x1001f9ca
xor ebx, ebx
jmp 0x1001f9f8
xor ebx, ebx
jmp 0x1001fa2f
xor eax, eax
jmp 0x1001fa5a
mov eax, 0x30400
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], eax
jmp 0x1001fb50
xor ecx, ecx
jmp 0x1001fad1
xor eax, eax
jmp 0x1001faf9
cmp dword [eax + 0x14], 0xfffffffe
jae 0x1001fb40
mov ecx, dword [edx + 0x1c]
test ecx, ecx
je 0x10035988
mov eax, dword fs:[0x18]
mov ebx, dword [esp + 0x24]
mov dword [esp + 0x18], ebx
mov eax, dword [eax + 0xf80]
mov eax, dword [eax]
add eax, ecx
jmp 0x1003598a
xor eax, eax
jmp 0x1001fb36
xor eax, eax
mov dword [esp + 0x1c], eax
cmp eax, ebx
jne 0x100359cd
mov ecx, dword [esp + 0x20]
test ecx, ecx
je 0x100359b4
mov eax, dword fs:[0x18]
mov ebx, dword [esp + 0x24]
mov dword [esp + 0x18], ebx
mov eax, dword [eax + 0xf80]
mov eax, dword [eax]
add eax, ecx
jmp 0x100359b6
xor eax, eax
push eax
lea ecx, [esp + 0x74]
mov dword [esp + 0x20], eax
call fcn.100042bf
mov ecx, dword [esp + 0x2c]
mov eax, dword [eax]
mov dword [ecx + 0x1c], eax
mov ecx, ebx
call fcn.10037324
mov ecx, dword [esp + 0x1c]
mov eax, ecx
mov dword [esp + 0x20], eax
cmp dword [ecx + 0x14], 0xfffffffe
jae 0x10035a14
mov edx, dword [eax]
test edx, edx
je 0x100359fc
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0xf80]
mov eax, dword [eax]
add eax, edx
jmp 0x100359fe
xor eax, eax
cmp eax, ecx
je 0x10035a08
cmp dword [eax + 0x14], 0xfffffffe
jb 0x100359e4
mov ebx, dword [esp + 0x24]
mov dword [esp + 0x20], eax
mov dword [esp + 0x18], ebx
mov ecx, dword [eax + 4]
test ecx, ecx
je 0x10035a39
mov eax, dword fs:[0x18]
mov ebx, dword [esp + 0x24]
mov dword [esp + 0x18], ebx
mov eax, dword [eax + 0xf80]
mov eax, dword [eax]
add eax, ecx
mov dword [esp + 0x38], eax
jmp 0x10035a41
mov dword [esp + 0x38], 0
push ebx
lea ecx, [esp + 0x68]
call fcn.100042bf
mov ecx, dword [esp + 0x38]
mov eax, dword [eax]
mov dword [ecx], eax
mov ecx, dword [esp + 0x20]
mov edx, dword [ecx + 4]
test edx, edx
je 0x10035a78
mov eax, dword fs:[0x18]
mov ebx, dword [esp + 0x24]
mov dword [esp + 0x18], ebx
mov eax, dword [eax + 0xf80]
mov eax, dword [eax]
add eax, edx
jmp 0x10035a7a
xor eax, eax
push ecx
push eax
mov ecx, ebx
call fcn.100210a1
push ebx
lea ecx, [esp + 0x70]
call fcn.100042bf
mov ecx, dword [esp + 0x20]
mov eax, dword [eax]
mov dword [ecx + 4], eax
mov eax, dword [esp + 0x1c]
cmp dword [eax + 0x14], 0xfffffffe
jb 0x1001fb40
push ebx
lea ecx, [esp + 0x60]
call fcn.100042bf
mov ecx, dword [esp + 0x2c]
mov eax, dword [eax]
mov dword [ecx + 0x1c], eax
jmp 0x1001fb40
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x18], ebx
jmp 0x1001fb44
xor ecx, ecx
jmp 0x1001fb8d
lea eax, [esp + 0x44]
add ecx, 0x298
push eax
push edi
call fcn.1004e737
jmp 0x1002016f
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0xf80]
mov eax, dword [eax]
add eax, edx
je 0x10035b49
call fcn.100142e9
test edx, edx
ja 0x10035b45
jb 0x10035b0a
cmp eax, 0x1000
jae 0x10035b45
mov ecx, dword [esp + 0x1c]
cmp dword [ecx + 0x74], 0
je 0x10035b49
mov edx, dword [ecx + 0x70]
test edx, edx
je 0x10035b2d
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0xf80]
mov eax, dword [eax]
add eax, edx
jmp 0x10035b2f
xor eax, eax
mov ebx, dword [esp + 0x10]
add eax, 0x328
mov dword [esp + 0x28], eax
mov dword [esp + 0x18], ebx
jmp 0x1001fc1f
mov ecx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x18], ebx
jmp 0x1001fbf2
xor eax, eax
jmp 0x1001fc15
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0xf80]
mov eax, dword [eax]
add eax, edx
je 0x10035bae
mov edx, dword [ecx + 0x70]
test edx, edx
je 0x10035b88
mov eax, dword fs:[0x18]
mov eax, dword [eax + 0xf80]
mov eax, dword [eax]
add eax, edx
jmp 0x10035b8a
xor eax, eax
lea edx, [esp + 0x38]
push edx
push dword [ecx + 0x74]
lea ecx, [eax + 0x20c]
call fcn.1001df6e
mov ebx, dword [esp + 0x10]
mov edx, dword [esp + 0x38]
mov dword [esp + 0x14], eax
jmp 0x1001fc6c
mov ebx, dword [esp + 0x10]
jmp 0x1001fc41
xor eax, eax
jmp 0x1001fc60
mov ecx, dword [esp + 0x1fc]
mov eax, dword [esp + 0x1f4]
mov edx, dword [esp + 0x20]
add eax, ecx
dec edx
add edx, eax
mov eax, dword [esp + 0x1f8]
dec eax
mov dword [esp + 0x20], edx
add ecx, eax
lea eax, [esp + 0x34]
push eax
mov eax, edi
sub eax, edx
inc eax
push eax
push ecx
mov ecx, dword [esp + 0x34]
lea eax, [esp + 0x8c]
push 0
push eax
call fcn.1001c8d0
mov dword [esp + 0x14], eax
test eax, eax
jns 0x1001fcb0
jmp 0x1001fd29
mov ecx, dword [esp + 0x5c]
jmp 0x1001fd35
xor edx, edx
jmp 0x1001fd72
xor eax, eax
jmp 0x1001fd96
cmp ecx, dword [eax + 0x14]
jbe 0x1001ff5c
jmp 0x1001fdcf
xor eax, eax
jmp 0x1001fdc6
xor edx, edx
jmp 0x1001fdf4
mov edx, dword [esp + 0x28]
test edx, edx
je 0x10035c64
mov eax, dword fs:[0x18]
mov ebx, dword [esp + 0x10]
mov eax, dword [eax + 0xf80]
mov ecx, dword [eax]
add ecx, edx
jmp 0x10035c66
xor ecx, ecx
push ecx
mov dword [esp + 0x20], ecx
lea ecx, [esp + 0x6c]
call fcn.100042bf
mov ecx, dword [ebp + 0x10]
mov edx, dword [esp + 0x1c]
mov eax, dword [eax]
mov dword [edi + 0x1c], eax
jmp 0x1001fe00
mov dword [esp + 0x34], 0
jmp 0x1001fe2a
xor edi, edi
jmp 0x1001fe56
xor eax, eax
jmp 0x1001fe9a
xor ebx, ebx
jmp 0x1001fec6
xor ecx, ecx
jmp 0x1001ff0f
xor eax, eax
jmp 0x1001ff2c
xor eax, eax
jmp 0x1001ff7b
xor ecx, ecx
jmp 0x1001ffd0
mov eax, 0x80030204
mov dword [esp + 0x14], eax
mov edi, dword [esp + 0x2c]
jmp 0x10020023
mov eax, 0x80030109
mov dword [esp + 0x14], eax
jmp 0x10020023
mov ebx, dword [esp + 0x10]
mov eax, 0x8000ffff
mov dword [esp + 0x14], eax
jmp 0x10020023
push 0xfffffffffffffffe
mov dword [ebx + 8], 0xffffffff
mov ecx, edi
push ebx
mov dword [ebx + 0xc], 0
call fcn.1001a310
mov eax, dword [esp + 0x14]
mov dword [ebx + 0x18], 0
mov dword [ebx + 0x10], 0
dec dword [edi + 0x10]
jmp 0x1002002f
xor eax, eax
jmp 0x10020082
xor ecx, ecx
jmp 0x100200a2
mov eax, 0x800300fd
jmp 0x1001f832
xor eax, eax
jmp 0x1001f881
xor ecx, ecx
jmp 0x1001f8be
mov dword [esp + 0x14], 0
jmp 0x1001f81c
xor ecx, ecx
jmp 0x1001f91c
xor ecx, ecx
jmp 0x1001f955
xor ecx, ecx
jmp 0x1001f98e
dec dword [edi]
jmp 0x1001f832