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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x12c
push ebx
push esi
push edi
lea eax, [esp + 0x18]
mov esi, ecx
push 4
push eax
mov dword [esp + 0x28], esi
call fcn.0045e3d0
add esp, 8
lea ecx, [esp + 0x18]
push ecx
lea edx, [ebp + 8]
push edx
lea ecx, [esi + 0x14]
call fcn.0046bd90
xor ebx, ebx
test eax, eax
je 0x4a87b0
mov ecx, dword [esp + 0x18]
mov eax, dword [ecx]
mov edx, dword [eax + 0x34]
call edx
test eax, eax
je 0x4a82e9
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp + 0x24]
mov dword [eax], ebx
mov eax, dword [esp + 0x18]
test eax, eax
mov dword [ecx], 0xc000017c
je 0x4a96c2
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x20
lea ecx, [esp + 0x10]
push 4
push ecx
call fcn.0045e3d0
add esp, 8
lea edx, [esp + 0x10]
mov edi, esi
push edx
lea eax, [ebp + 8]
add edi, 0x3c
push eax
mov ecx, edi
call fcn.0049c300
test eax, eax
je 0x4a85ce
mov ecx, dword [esp + 0x10]
mov edx, dword [ebp + 0xc]
cmp edx, dword [ecx + 8]
jbe 0x4a85ce
lea ecx, [esp + 0x28]
call fcn.00498820
lea ecx, [esp + 0x34]
call fcn.00498820
mov eax, dword [esp + 0x10]
mov esi, dword [eax + 8]
xor ebx, ebx
cmp esi, dword [ebp + 0xc]
jae 0x4a8368
mov edi, dword [ebp + 0xc]
mov ecx, dword [esp + 0x10]
mov ecx, dword [ecx + 0xc]
mov edx, dword [ecx]
mov edx, dword [edx + 0xc]
lea eax, [esp + 0x28]
push eax
call edx
cmp eax, ebx
jne 0x4a83cc
add esi, 1
cmp esi, edi
jb 0x4a8348
xor ebx, ebx
mov eax, dword [ebp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [ecx + 8], eax
mov eax, dword [ebp + 0x10]
sub eax, ebx
je 0x4a858c
sub eax, 1
je 0x4a8534
sub eax, 1
je 0x4a84aa
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x24]
mov dword [edx], ebx
lea ecx, [esp + 0x34]
mov dword [eax], 0xc000000d
call fcn.00498940
lea ecx, [esp + 0x28]
call fcn.00498940
mov eax, dword [esp + 0x10]
cmp eax, ebx
je 0x4a96b2
mov ecx, dword [eax]
mov edx, dword [ecx + 0xc]
push eax
call edx
mov dword [esp + 0x10], ebx
jmp 0x4a96b2
cmp eax, 1
jne 0x4a840e
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp + 0x24]
mov dword [eax], ebx
mov dword [ecx], 0x8000001a
lea ecx, [esp + 0x34]
call fcn.00498940
lea ecx, [esp + 0x28]
call fcn.00498940
mov eax, dword [esp + 0x10]
cmp eax, ebx
je 0x4a96b2
mov edx, dword [eax]
push eax
mov eax, dword [edx + 0xc]
call eax
mov dword [esp + 0x10], ebx
jmp 0x4a96b2
cmp dword [0x100a5964], ebx
je 0x4a846d
push 0x10088e80
push eax
lea ecx, [esp + 0x8c]
call fcn.0045aab0
push eax
push 0x10097180
push 0x10099360
lea ecx, [esp + 0x70]
call fcn.004596b0
mov ecx, eax
call fcn.004585e0
mov ecx, eax
call fcn.004585e0
mov ecx, eax
call fcn.00459770
mov ecx, eax
call fcn.004585e0
lea ecx, [esp + 0x60]
call fcn.004584a0
lea ecx, [esp + 0x84]
call fcn.004442a0
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp + 0x24]
mov dword [eax], ebx
mov dword [ecx], 0xc0000229
lea ecx, [esp + 0x34]
call fcn.00498940
lea ecx, [esp + 0x28]
call fcn.00498940
mov eax, dword [esp + 0x10]
cmp eax, ebx
je 0x4a96b2
mov edx, dword [eax]
push eax
mov eax, dword [edx + 0xc]
call eax
mov dword [esp + 0x10], ebx
jmp 0x4a96b2
cmp dword [esp + 0x30], ebx
mov eax, dword [ebp + 0x20]
mov dword [eax], ebx
je 0x4a84c0
lea ecx, [esp + 0x34]
call fcn.00498c20
jmp 0x4a84c2
xor eax, eax
mov ecx, dword [ebp + 0x1c]
mov edx, dword [ebp + 0x18]
push ecx
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [esp + 0x64]
push ecx
mov ecx, dword [esp + 0x64]
push edx
mov edx, dword [esp + 0x64]
push ecx
mov ecx, dword [esp + 0x64]
push edx
mov edx, dword [esp + 0x64]
push ecx
mov ecx, dword [esp + 0x64]
push edx
mov edx, dword [esp + 0x64]
push ecx
mov ecx, dword [esp + 0x64]
push edx
push ecx
mov ecx, dword [esp + 0x4c]
push eax
call fcn.00499050
mov edx, dword [ebp + 0x24]
lea ecx, [esp + 0x34]
mov dword [edx], eax
call fcn.00498940
lea ecx, [esp + 0x28]
call fcn.00498940
mov eax, dword [esp + 0x10]
cmp eax, ebx
je 0x4a96b2
mov ecx, dword [eax]
mov edx, dword [ecx + 0xc]
push eax
call edx
mov dword [esp + 0x10], ebx
jmp 0x4a96b2
cmp dword [esp + 0x30], ebx
mov eax, dword [ebp + 0x20]
mov dword [eax], ebx
je 0x4a854c
lea ecx, [esp + 0x34]
call fcn.00498c20
mov esi, eax
jmp 0x4a854e
xor esi, esi
lea ecx, [esp + 0xa4]
push ecx
lea ecx, [esp + 0x2c]
call fcn.00498950
mov edx, dword [ebp + 0x1c]
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [esp + 0x48]
push eax
mov eax, dword [esp + 0x48]
push ecx
push edx
push eax
push esi
lea ecx, [esp + 0xbc]
push ecx
mov ecx, dword [esp + 0x3c]
call fcn.00498f10
jmp 0x4a8500
mov eax, dword [ebp + 0x20]
lea ecx, [esp + 0x9c]
push ecx
lea ecx, [esp + 0x2c]
mov dword [eax], ebx
call fcn.00498950
mov edx, dword [ebp + 0x1c]
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [esp + 0x48]
push eax
mov eax, dword [esp + 0x48]
push ecx
push edx
push eax
lea ecx, [esp + 0xb0]
push ecx
mov ecx, dword [esp + 0x38]
call fcn.00498e80
jmp 0x4a8500
mov eax, dword [ebp + 0x10]
cmp eax, ebx
je 0x4a8608
cmp eax, 2
je 0x4a8608
cmp eax, 1
je 0x4a8608
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp + 0x24]
mov dword [eax], ebx
mov dword [ecx], 0xc000000d
lea ecx, [esp + 0x10]
call fcn.00469530
lea ecx, [esp + 0x18]
call fcn.004c4020
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x20
lea edx, [esp + 0x7c]
push edx
call fcn.004998a0
mov esi, eax
mov eax, dword [esp + 0x14]
add esp, 4
cmp eax, ebx
je 0x4a862b
mov ecx, dword [eax]
mov edx, dword [ecx + 0xc]
push eax
call edx
mov dword [esp + 0x10], ebx
mov eax, dword [esi]
cmp eax, ebx
mov dword [esp + 0x10], eax
je 0x4a863d
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [esp + 0x7c]
cmp eax, ebx
je 0x4a864d
mov ecx, dword [eax]
mov edx, dword [ecx + 0xc]
push eax
call edx
lea eax, [esp + 0x14]
push 4
push eax
call fcn.0045e3d0
mov ecx, dword [esp + 0x20]
mov edx, dword [ecx]
mov edx, dword [edx + 0x40]
add esp, 8
lea eax, [esp + 0x14]
push eax
call edx
mov esi, eax
cmp esi, ebx
je 0x4a8702
cmp dword [0x100a5964], ebx
je 0x4a86d5
push 0x10088e80
push esi
lea ecx, [esp + 0x8c]
call fcn.0045aab0
push eax
push 0x10096ffc
push 0x10099360
lea ecx, [esp + 0x70]
call fcn.004596b0
mov ecx, eax
call fcn.004585e0
mov ecx, eax
call fcn.004585e0
mov ecx, eax
call fcn.00459770
mov ecx, eax
call fcn.004585e0
lea ecx, [esp + 0x60]
call fcn.004584a0
lea ecx, [esp + 0x84]
call fcn.004442a0
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp + 0x24]
and esi, 0xefffffff
mov dword [eax], ebx
mov dword [ecx], esi
mov eax, dword [esp + 0x14]
cmp eax, ebx
je 0x4a83af
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
mov dword [esp + 0x14], ebx
jmp 0x4a83af
mov ecx, dword [esp + 0x10]
lea eax, [esp + 0x14]
push eax
add ecx, 0xc
call fcn.00499700
lea ecx, [esp + 0x28]
call fcn.00498820
lea ecx, [esp + 0x34]
call fcn.00498820
xor esi, esi
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx]
mov edx, dword [edx + 0xc]
lea eax, [esp + 0x28]
push eax
call edx
cmp eax, ebx
jne 0x4a8bc7
add esi, 1
cmp esi, dword [ebp + 0xc]
jbe 0x4a8727
mov eax, dword [esp + 0x10]
mov ecx, dword [ebp + 0xc]
mov dword [eax + 8], ecx
lea edx, [esp + 0x10]
push edx
lea eax, [ebp + 8]
push eax
mov ecx, edi
call fcn.0046c1d0
mov eax, dword [ebp + 0x10]
sub eax, ebx
je 0x4a8d45
sub eax, 1
je 0x4a8ced
sub eax, 1
je 0x4a8c63
lea ecx, [esp + 0x34]
call fcn.00498940
lea ecx, [esp + 0x28]
call fcn.00498940
mov eax, dword [esp + 0x14]
cmp eax, ebx
je 0x4a87a0
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov eax, dword [esp + 0x10]
cmp eax, ebx
je 0x4a87b0
mov ecx, dword [eax]
mov edx, dword [ecx + 0xc]
push eax
call edx
lea ecx, [esp + 0x28]
call fcn.004af3d0
push ebx
lea eax, [esp + 0x2c]
push eax
push ebx
push 0x40
push 0x10088394
lea ecx, [esp + 0xc0]
call fcn.00498650
mov ecx, eax
call fcn.00498c20
mov ecx, dword [ebp + 8]
push eax
push ecx
lea ecx, [esp + 0x138]
call fcn.00498600
mov ecx, eax
call fcn.00498c20
mov ecx, dword [esp + 0x28]
push eax
call fcn.0049ef10
test eax, eax
je 0x4a90d2
lea ecx, [esp + 0x28]
call fcn.00498200
mov ecx, eax
call fcn.004af930
test eax, eax
jne 0x4a9112
lea edx, [esp + 0x14]
push edx
lea ecx, [esp + 0x2c]
call fcn.004af5c0
lea eax, [esp + 0x10]
push 4
push eax
call fcn.0045e3d0
mov ecx, dword [esp + 0x28]
add esp, 8
lea edx, [esp + 0x10]
push edx
lea eax, [ebp + 8]
add ecx, 0x60
push eax
call fcn.0049c300
test eax, eax
jne 0x4a8fac
jmp 0x4a8860
mov edx, dword [ebp + 8]
lea ecx, [esp + 0xc8]
push ecx
mov ecx, dword [esp + 0x24]
push edx
mov dword [esp + 0xd0], ebx
mov dword [esp + 0xd4], ebx
call fcn.004a0f80
mov eax, dword [esp + 0xcc]
mov ecx, dword [esp + 0xc8]
push eax
push ecx
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx]
mov eax, dword [edx + 0x48]
call eax
mov ecx, dword [ebp + 0x10]
push eax
push ecx
lea edx, [esp + 0xcc]
push edx
call fcn.0049a280
mov esi, eax
mov eax, dword [esp + 0x24]
add esp, 0x14
cmp eax, ebx
je 0x4a88c9
mov ecx, dword [eax]
mov edx, dword [ecx + 0xc]
push eax
call edx
mov dword [esp + 0x10], ebx
mov esi, dword [esi]
cmp esi, ebx
mov dword [esp + 0x10], esi
je 0x4a88db
mov eax, dword [esi]
mov ecx, dword [eax + 8]
push esi
call ecx
mov eax, dword [esp + 0xbc]
cmp eax, ebx
je 0x4a88f5
mov edx, dword [eax]
push eax
mov eax, dword [edx + 0xc]
call eax
mov dword [esp + 0xbc], ebx
lea ecx, [esp + 0x24]
push 4
push ecx
call fcn.0045e3d0
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx]
mov edx, dword [edx + 0x60]
add esp, 8
lea eax, [esp + 0x24]
push eax
push 2
call edx
mov esi, eax
cmp esi, ebx
jne 0x4a9120
mov dword [esp + 0x60], ebx
mov dword [esp + 0x64], ebx
jmp 0x4a8930
lea ecx, [esp + 0x74]
call fcn.00498820
lea eax, [esp + 0x1c]
push 4
push eax
call fcn.0045e3d0
mov ecx, dword [esp + 0x2c]
mov edx, dword [ecx]
mov edx, dword [edx + 0xc]
add esp, 8
lea eax, [esp + 0xdc]
push eax
lea eax, [esp + 0x20]
push eax
lea eax, [esp + 0x7c]
push eax
call edx
mov esi, eax
cmp esi, ebx
jne 0x4a8df7
cmp dword [esp + 0xdc], ebx
jne 0x4a8d87
mov ecx, dword [esp + 0x1c]
mov eax, dword [ecx]
mov edx, dword [eax + 0x20]
call edx
test eax, eax
jne 0x4a899a
mov ecx, dword [esp + 0x1c]
mov eax, dword [ecx]
mov edx, dword [eax + 0x28]
call edx
test eax, eax
je 0x4a89ab
lea eax, [esp + 0x74]
mov ecx, eax
push eax
push ecx
lea ecx, [esp + 0x68]
call fcn.0049a0d0
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx]
mov eax, dword [edx + 0x20]
call eax
test eax, eax
je 0x4a8ba5
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx]
mov eax, dword [edx + 0x28]
call eax
test eax, eax
jne 0x4a8ba5
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx]
mov edx, dword [edx + 0x70]
lea eax, [esp + 0x70]
push eax
call edx
lea eax, [esp + 0x6c]
push 4
push eax
call fcn.0045e3d0
mov eax, dword [esp + 0x78]
mov esi, dword [eax]
add esp, 8
lea ecx, [esp + 0x6c]
push ecx
push 0x20019
push 0x10088394
lea ecx, [esp + 0x90]
mov edi, eax
add esi, 0x10
call fcn.00498650
mov ecx, eax
call fcn.00498c20
mov edx, dword [esi]
push eax
mov ecx, edi
call edx
mov esi, eax
cmp esi, ebx
jne 0x4a91c5
lea ecx, [esp + 0xe0]
call fcn.00498820
lea ecx, [esp + 0xec]
call fcn.00498820
mov ecx, dword [esp + 0x6c]
mov eax, dword [ecx]
mov eax, dword [eax + 0x48]
lea edx, [esp + 0xe0]
push edx
call eax
mov esi, eax
cmp esi, ebx
jne 0x4a926c
lea ecx, [esp + 0x74]
push ecx
lea ecx, [esp + 0xe4]
call fcn.00498920
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx]
mov eax, dword [edx + 0x14]
call eax
cmp eax, ebx
mov dword [esp + 0xe8], eax
je 0x4a8ab6
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx]
mov edx, dword [edx + 0x18]
lea eax, [esp + 0xd4]
push eax
call edx
push eax
lea ecx, [esp + 0xf0]
call fcn.00498920
lea ecx, [esp + 0xd4]
call fcn.00498940
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x10]
cmp dword [eax + 0x14], ecx
lea esi, [eax + 0x14]
mov edi, eax
jne 0x4a8ad6
add ecx, 0x100
push ecx
lea ecx, [eax + 0xc]
call fcn.00499e30
mov eax, dword [esi]
lea ecx, [eax + 1]
lea edx, [eax*8]
mov dword [esi], ecx
sub edx, eax
mov eax, dword [edi + 0xc]
lea ecx, [esp + 0xe0]
lea esi, [eax + edx*8]
push ecx
mov ecx, esi
call fcn.00498920
mov edx, dword [esp + 0xe8]
lea eax, [esp + 0xec]
push eax
lea ecx, [esi + 0xc]
mov dword [esi + 8], edx
call fcn.00498920
mov ecx, dword [esp + 0xf8]
mov dword [esi + 0x18], ecx
mov edx, dword [esp + 0xfc]
mov dword [esi + 0x1c], edx
mov eax, dword [esp + 0x100]
mov dword [esi + 0x20], eax
mov ecx, dword [esp + 0x104]
mov dword [esi + 0x24], ecx
mov edx, dword [esp + 0x108]
mov dword [esi + 0x28], edx
mov eax, dword [esp + 0x10c]
mov dword [esi + 0x2c], eax
mov ecx, dword [esp + 0x110]
mov dword [esi + 0x30], ecx
mov edx, dword [esp + 0x114]
lea ecx, [esp + 0xec]
mov dword [esi + 0x34], edx
call fcn.00498940
lea ecx, [esp + 0xe0]
call fcn.00498940
mov eax, dword [esp + 0x6c]
cmp eax, ebx
je 0x4a8b91
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x6c], ebx
mov eax, dword [esp + 0x70]
cmp eax, ebx
je 0x4a8ba5
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x70], ebx
mov eax, dword [esp + 0x1c]
cmp eax, ebx
je 0x4a8bb9
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x1c], ebx
lea ecx, [esp + 0x74]
call fcn.00498940
jmp 0x4a8930
cmp eax, 1
jne 0x4a8bf1
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp + 0x24]
mov dword [eax], ebx
mov dword [ecx], 0x8000001a
lea ecx, [esp + 0x34]
call fcn.00498940
lea ecx, [esp + 0x28]
call fcn.00498940
jmp 0x4a86e5
cmp dword [0x100a5964], ebx
je 0x4a8c50
push 0x10088e80
push eax
lea ecx, [esp + 0x8c]
call fcn.0045aab0
push eax
push 0x10096ffc
push 0x10099360
lea ecx, [esp + 0x70]
call fcn.004596b0
mov ecx, eax
call fcn.004585e0
mov ecx, eax
call fcn.004585e0
mov ecx, eax
call fcn.00459770
mov ecx, eax
call fcn.004585e0
lea ecx, [esp + 0x60]
call fcn.004584a0
lea ecx, [esp + 0x84]
call fcn.004442a0
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp + 0x24]
mov dword [eax], ebx
mov dword [ecx], 0xc0000229
jmp 0x4a8bda
cmp dword [esp + 0x30], ebx
mov eax, dword [ebp + 0x20]
mov dword [eax], ebx
je 0x4a8c79
lea ecx, [esp + 0x34]
call fcn.00498c20
jmp 0x4a8c7b
xor eax, eax
mov ecx, dword [ebp + 0x1c]
mov edx, dword [ebp + 0x18]
push ecx
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [esp + 0x64]
push ecx
mov ecx, dword [esp + 0x64]
push edx
mov edx, dword [esp + 0x64]
push ecx
mov ecx, dword [esp + 0x64]
push edx
mov edx, dword [esp + 0x64]
push ecx
mov ecx, dword [esp + 0x64]
push edx
mov edx, dword [esp + 0x64]
push ecx
mov ecx, dword [esp + 0x64]
push edx
push ecx
mov ecx, dword [esp + 0x4c]
push eax
call fcn.00499050
mov edx, dword [ebp + 0x24]
lea ecx, [esp + 0x34]
mov dword [edx], eax
call fcn.00498940
lea ecx, [esp + 0x28]
call fcn.00498940
mov eax, dword [esp + 0x14]
cmp eax, ebx
je 0x4a83af
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x14], ebx
jmp 0x4a83af
cmp dword [esp + 0x30], ebx
mov eax, dword [ebp + 0x20]
mov dword [eax], ebx
je 0x4a8d05
lea ecx, [esp + 0x34]
call fcn.00498c20
mov esi, eax
jmp 0x4a8d07
xor esi, esi
lea ecx, [esp + 0xa4]
push ecx
lea ecx, [esp + 0x2c]
call fcn.00498950
mov edx, dword [ebp + 0x1c]
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [esp + 0x48]
push eax
mov eax, dword [esp + 0x48]
push ecx
push edx
push eax
push esi
lea ecx, [esp + 0xbc]
push ecx
mov ecx, dword [esp + 0x3c]
call fcn.00498f10
jmp 0x4a8cb9
mov eax, dword [ebp + 0x20]
lea ecx, [esp + 0x9c]
push ecx
lea ecx, [esp + 0x2c]
mov dword [eax], ebx
call fcn.00498950
mov edx, dword [ebp + 0x1c]
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [esp + 0x48]
push eax
mov eax, dword [esp + 0x48]
push ecx
push edx
push eax
lea ecx, [esp + 0xb0]
push ecx
mov ecx, dword [esp + 0x38]
call fcn.00498e80
jmp 0x4a8cb9
mov eax, dword [esp + 0x1c]
cmp eax, ebx
je 0x4a8d9b
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x1c], ebx
lea ecx, [esp + 0x74]
call fcn.00498940
lea ecx, [esp + 0x60]
call fcn.0049a1d0
lea ecx, [esp + 0x60]
call fcn.0049a1d0
mov eax, dword [esp + 0x60]
cmp eax, ebx
je 0x4a8dd2
mov edi, edi
mov esi, dword [eax + 4]
push eax
call fcn.00441000
add esp, 4
cmp esi, ebx
mov eax, esi
jne 0x4a8dc0
mov eax, dword [esp + 0x24]
cmp eax, ebx
mov dword [esp + 0x64], ebx
mov dword [esp + 0x60], ebx
je 0x4a8860
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x24], ebx
jmp 0x4a8860
cmp esi, 1
jne 0x4a942d
lea ecx, [esp + 0x1c]
call fcn.004c4020
lea ecx, [esp + 0x74]
call fcn.00498940
xor ebx, ebx
lea edi, [esi + 3]
mov dword [esp + 0x94], ebx
mov dword [esp + 0x98], ebx
mov dword [esp + 0x7c], esi
mov dword [esp + 0x80], ebx
cmp dword [esp + 0x98], edi
jae 0x4a8e5c
push ebx
call fcn.0045e5b0
add esp, 4
test edi, edi
jne 0x4a8e4a
xor ebx, ebx
jmp 0x4a8e55
push edi
call fcn.0045e460
add esp, 4
mov ebx, eax
mov dword [esp + 0x94], ebx
mov ecx, dword [0x100a5870]
mov edx, dword [esp + 0x80]
lea eax, [esp + 0x11c]
push eax
mov eax, dword [ebp + 8]
push edi
push ebx
push 0
add ecx, 0x78c
push edx
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 0x24]
mov dword [esp + 0xb0], edi
call eax
call eax
mov esi, eax
test esi, esi
je 0x4a8eb5
cmp esi, 0xc0000023
je 0x4a8eaa
cmp esi, 0x80000005
jne 0x4a8f50
add edi, 0x100
jmp 0x4a8e30
mov ecx, dword [ebx + 0xc]
shr ecx, 1
push ecx
lea edx, [ebx + 0x10]
push edx
lea ecx, [esp + 0xac]
call fcn.00498830
lea ecx, [esp + 0x9c]
call fcn.00498820
lea eax, [esp + 0x9c]
push eax
lea ecx, [esp + 0xa8]
push ecx
lea ecx, [esp + 0x68]
call fcn.004997e0
lea ecx, [esp + 0x9c]
mov esi, eax
call fcn.00498940
test esi, esi
jne 0x4a8f42
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 0x1c]
cmp dword [eax + 0x20], ecx
lea esi, [eax + 0x20]
mov dword [esp + 0xd0], eax
jne 0x4a8f27
add ecx, 0x100
push ecx
lea ecx, [eax + 0x18]
call fcn.00499630
mov eax, dword [esi]
mov ecx, dword [esp + 0xd0]
lea edx, [eax + 1]
mov dword [esi], edx
mov edx, dword [ecx + 0x18]
mov ecx, dword [esp + 0x80]
mov dword [edx + eax*4], ecx
lea ecx, [esp + 0xa4]
call fcn.00498940
jmp 0x4a8f64
cmp esi, 0x8000001a
jne 0x4a92fe
mov dword [esp + 0x7c], 0
add dword [esp + 0x80], 1
cmp dword [esp + 0x7c], 0
jne 0x4a8e30
mov ecx, dword [esp + 0x20]
lea edx, [esp + 0x10]
push edx
lea eax, [ebp + 8]
push eax
add ecx, 0x60
call fcn.0046c1d0
lea ecx, [esp + 0x94]
call fcn.00443840
lea ecx, [esp + 0x60]
call fcn.0049aff0
lea ecx, [esp + 0x24]
call fcn.004c4020
xor ebx, ebx
mov ecx, dword [esp + 0x14]
mov edx, dword [ecx]
mov eax, dword [edx + 0x48]
mov esi, dword [esp + 0x10]
call eax
cmp eax, dword [esi + 0x24]
mov edi, dword [esp + 0x20]
jle 0x4a8fda
lea ecx, [ebp + 8]
push ecx
lea ecx, [edi + 0x60]
call fcn.0046c450
mov eax, dword [esp + 0x10]
cmp eax, ebx
je 0x4a903b
jmp 0x4a902f
mov ecx, dword [ebp + 8]
lea eax, [esp + 0xc0]
push eax
push ecx
mov ecx, edi
mov dword [esp + 0xc8], ebx
mov dword [esp + 0xcc], ebx
call fcn.004a0f80
test eax, eax
mov edx, dword [esp + 0x10]
je 0x4a94a7
mov ecx, dword [esp + 0xc0]
cmp ecx, dword [edx + 0x28]
mov esi, dword [esp + 0xc4]
lea eax, [edx + 0x28]
jne 0x4a9026
cmp esi, dword [eax + 4]
je 0x4a94a7
mov dword [eax], ecx
mov dword [eax + 4], esi
mov eax, dword [esp + 0x10]
mov edx, dword [eax]
push eax
mov eax, dword [edx + 0xc]
call eax
mov dword [esp + 0x10], ebx
mov eax, dword [esp + 0x14]
cmp eax, ebx
je 0x4a904f
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x14], ebx
mov eax, dword [esp + 0x44]
cmp eax, ebx
je 0x4a9063
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x44], ebx
mov eax, dword [esp + 0x30]
cmp eax, ebx
je 0x4a9077
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x30], ebx
lea ecx, [esp + 0x28]
call fcn.00498940
lea ecx, [esp + 0x28]
call fcn.004af3d0
push ebx
lea eax, [esp + 0x2c]
push eax
push ebx
push 0x40
push 0x10088394
lea ecx, [esp + 0xc0]
call fcn.00498650
mov ecx, eax
call fcn.00498c20
mov ecx, dword [ebp + 8]
push eax
push ecx
lea ecx, [esp + 0x138]
call fcn.00498600
mov ecx, eax
call fcn.00498c20
push eax
mov ecx, edi
call fcn.0049ef10
test eax, eax
jne 0x4a8804
cmp dword [0x100a5964], ebx
je 0x4a9104
push 0x10096d24
push 0x10099360
lea ecx, [esp + 0x68]
call fcn.004596b0
mov ecx, eax
call fcn.004585e0
mov ecx, eax
call fcn.004585e0
lea ecx, [esp + 0x60]
call fcn.004584a0
mov edx, dword [ebp + 0x20]
mov dword [edx], 1
jmp 0x4a9681
mov eax, dword [ebp + 0x20]
mov dword [eax], 1
jmp 0x4a9681
cmp dword [0x100a5964], ebx
je 0x4a917f
push 0x10088e80
push esi
lea ecx, [esp + 0x8c]
call fcn.0045aab0
push eax
push 0x10099338
push 0x10099360
lea ecx, [esp + 0x70]
call fcn.004596b0
mov ecx, eax
call fcn.004585e0
mov ecx, eax
call fcn.004585e0
mov ecx, eax
call fcn.00459770
mov ecx, eax
call fcn.004585e0
lea ecx, [esp + 0x60]
call fcn.004584a0
lea ecx, [esp + 0x84]
call fcn.004442a0
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp + 0x24]
and esi, 0xefffffff
mov dword [eax], ebx
mov dword [ecx], esi
lea ecx, [esp + 0x24]
call fcn.004c4020
lea ecx, [esp + 0x10]
call fcn.00469530
lea ecx, [esp + 0x14]
call fcn.004c4020
lea ecx, [esp + 0x28]
call fcn.00499da0
lea ecx, [esp + 0x18]
call fcn.004c4020
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x20
cmp dword [0x100a5964], ebx
je 0x4a922a
push 0x10088e80
push esi
lea ecx, [esp + 0xb4]
call fcn.0045aab0
push eax
push 0x10099304
push 0x10099360
lea ecx, [esp + 0x94]
call fcn.004596b0
mov ecx, eax
call fcn.004585e0
mov ecx, eax
call fcn.004585e0
mov ecx, eax
call fcn.00459770
mov ecx, eax
call fcn.004585e0
lea ecx, [esp + 0x84]
call fcn.004584a0
lea ecx, [esp + 0xac]
call fcn.004442a0
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x24]
and esi, 0xefffffff
mov dword [edx], ebx
mov dword [eax], esi
lea ecx, [esp + 0x6c]
call fcn.004c4020
lea ecx, [esp + 0x70]
call fcn.004c4020
lea ecx, [esp + 0x1c]
call fcn.004c4020
lea ecx, [esp + 0x74]
call fcn.00498940
lea ecx, [esp + 0x60]
call fcn.0049aff0
jmp 0x4a918f
cmp dword [0x100a5964], ebx
je 0x4a92d1
push 0x10088e80
push esi
lea ecx, [esp + 0xb4]
call fcn.0045aab0
push eax
push 0x100992cc
push 0x10099360
lea ecx, [esp + 0x94]
call fcn.004596b0
mov ecx, eax
call fcn.004585e0
mov ecx, eax
call fcn.004585e0
mov ecx, eax
call fcn.00459770
mov ecx, eax
call fcn.004585e0
lea ecx, [esp + 0x84]
call fcn.004584a0
lea ecx, [esp + 0xac]
call fcn.004442a0
mov ecx, dword [ebp + 0x20]
mov edx, dword [ebp + 0x24]
mov dword [ecx], ebx
and esi, 0xefffffff
lea ecx, [esp + 0xec]
mov dword [edx], esi
call fcn.00498940
lea ecx, [esp + 0xe0]
call fcn.00498940
jmp 0x4a923a
cmp dword [0x100a5964], 0
je 0x4a9370
push 0x10088e80
push esi
lea ecx, [esp + 0xb4]
call fcn.004597b0
push eax
push 0x10099280
push 0x10099360
lea ecx, [esp + 0x94]
call fcn.004596b0
mov ecx, eax
call fcn.004585e0
mov ecx, eax
call fcn.004585e0
mov ecx, eax
call fcn.00459770
mov ecx, eax
call fcn.004585e0
lea ecx, [esp + 0x84]
call fcn.004584a0
mov eax, dword [esp + 0xb0]
xor edi, edi
cmp eax, edi
je 0x4a9372
push eax
call fcn.0045e5b0
add esp, 4
jmp 0x4a9372
xor edi, edi
cmp ebx, edi
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp + 0x24]
mov dword [eax], edi
mov dword [ecx], esi
je 0x4a9389
push ebx
call fcn.0045e5b0
add esp, 4
lea ecx, [esp + 0x60]
call fcn.0049a1d0
lea ecx, [esp + 0x60]
call fcn.0049a1d0
mov eax, dword [esp + 0x60]
cmp eax, edi
je 0x4a93b5
mov esi, dword [eax + 4]
push eax
call fcn.00441000
add esp, 4
cmp esi, edi
mov eax, esi
jne 0x4a93a3
mov eax, dword [esp + 0x24]
cmp eax, edi
je 0x4a93c9
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
mov dword [esp + 0x24], edi
mov eax, dword [esp + 0x10]
cmp eax, edi
je 0x4a93dd
mov ecx, dword [eax]
mov edx, dword [ecx + 0xc]
push eax
call edx
mov dword [esp + 0x10], edi
mov eax, dword [esp + 0x14]
cmp eax, edi
je 0x4a93f1
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x14], edi
mov eax, dword [esp + 0x44]
cmp eax, edi
je 0x4a9405
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x44], edi
mov eax, dword [esp + 0x30]
cmp eax, edi
je 0x4a9419
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x30], edi
lea ecx, [esp + 0x28]
call fcn.00498940
mov eax, dword [esp + 0x18]
cmp eax, edi
jmp 0x4a96b8
cmp dword [0x100a5964], ebx
je 0x4a9492
push 0x10088e80
push esi
lea ecx, [esp + 0xb4]
call fcn.0045aab0
push eax
push 0x100970b4
push 0x10099360
lea ecx, [esp + 0x94]
call fcn.004596b0
mov ecx, eax
call fcn.004585e0
mov ecx, eax
call fcn.004585e0
mov ecx, eax
call fcn.00459770
mov ecx, eax
call fcn.004585e0
lea ecx, [esp + 0x84]
call fcn.004584a0
lea ecx, [esp + 0xac]
call fcn.004442a0
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp + 0x24]
and esi, 0xefffffff
mov dword [eax], ebx
mov dword [ecx], esi
jmp 0x4a924c
mov eax, dword [edx + 0x14]
mov ecx, dword [ebp + 0xc]
cmp ecx, eax
jae 0x4a95f5
lea eax, [ecx*8]
sub eax, ecx
mov ecx, dword [edx + 0xc]
lea esi, [ecx + eax*8]
mov eax, dword [ebp + 0x10]
sub eax, ebx
je 0x4a95b9
sub eax, 1
je 0x4a9567
sub eax, 1
mov eax, dword [ebp + 0x20]
mov dword [eax], ebx
je 0x4a94f0
mov ecx, dword [ebp + 0x24]
mov dword [ecx], 0xc000000d
jmp 0x4a9661
cmp dword [esi + 8], ebx
je 0x4a94ff
lea ecx, [esi + 0xc]
call fcn.00498c20
jmp 0x4a9501
xor eax, eax
mov ecx, dword [ebp + 0x1c]
mov edx, dword [ebp + 0x18]
push ecx
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [esi + 0x34]
push ecx
mov ecx, dword [esi + 0x30]
push edx
mov edx, dword [esi + 0x2c]
push ecx
mov ecx, dword [esi + 0x28]
push edx
mov edx, dword [esi + 0x24]
push ecx
mov ecx, dword [esi + 0x20]
push edx
mov edx, dword [esi + 0x1c]
push ecx
mov ecx, dword [esi + 0x18]
push edx
push ecx
push eax
mov ecx, edi
call fcn.00499050
mov edx, dword [ebp + 0x24]
mov dword [edx], eax
mov eax, dword [esp + 0x10]
cmp eax, ebx
je 0x4a954e
mov ecx, dword [eax]
mov edx, dword [ecx + 0xc]
push eax
call edx
mov dword [esp + 0x10], ebx
mov eax, dword [esp + 0x14]
cmp eax, ebx
je 0x4a9681
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
jmp 0x4a967d
mov eax, dword [ebp + 0x20]
mov dword [eax], ebx
cmp dword [esi + 8], ebx
je 0x4a957d
lea ecx, [esi + 0xc]
call fcn.00498c20
mov edi, eax
jmp 0x4a957f
xor edi, edi
lea ecx, [esp + 0xac]
push ecx
mov ecx, esi
call fcn.00498950
mov edx, dword [ebp + 0x1c]
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [esi + 0x1c]
push eax
mov eax, dword [esi + 0x18]
push ecx
push edx
push eax
push edi
lea ecx, [esp + 0xc4]
push ecx
mov ecx, dword [esp + 0x3c]
call fcn.00498f10
jmp 0x4a9535
mov eax, dword [ebp + 0x20]
lea ecx, [esp + 0xd4]
push ecx
mov ecx, esi
mov dword [eax], ebx
call fcn.00498950
mov edx, dword [ebp + 0x1c]
mov eax, dword [ebp + 0x18]
mov ecx, dword [ebp + 0x14]
push edx
mov edx, dword [esi + 0x1c]
push eax
mov eax, dword [esi + 0x18]
push ecx
push edx
push eax
lea ecx, [esp + 0xe8]
push ecx
mov ecx, edi
call fcn.00498e80
jmp 0x4a9535
sub ecx, eax
mov eax, ecx
cmp eax, dword [edx + 0x20]
jae 0x4a9653
mov ecx, dword [ebp + 0x20]
mov dword [ecx], ebx
mov edx, dword [edx + 0x18]
mov ecx, dword [0x100a5870]
lea eax, [edx + eax*4]
mov edx, dword [ebp + 0x1c]
mov eax, dword [eax]
push edx
mov edx, dword [ebp + 0x18]
push edx
mov edx, dword [ebp + 0x14]
push edx
mov edx, dword [ebp + 0x10]
push edx
mov edx, dword [ebp + 8]
add ecx, 0x78c
push eax
mov eax, dword [ecx]
push edx
mov edx, dword [eax + 0x24]
call edx
call eax
mov ecx, dword [ebp + 0x24]
mov dword [ecx], eax
mov eax, dword [esp + 0x10]
cmp eax, ebx
je 0x4a954e
mov edx, dword [eax]
push eax
mov eax, dword [edx + 0xc]
call eax
jmp 0x4a954a
mov eax, dword [ebp + 0x20]
mov ecx, dword [ebp + 0x24]
mov dword [eax], ebx
mov dword [ecx], 0x8000001a
mov eax, dword [edx]
mov ecx, dword [eax + 0xc]
push edx
call ecx
mov eax, dword [esp + 0x14]
cmp eax, ebx
mov dword [esp + 0x10], ebx
je 0x4a9681
mov edx, dword [eax]
push eax
mov eax, dword [edx + 8]
call eax
mov dword [esp + 0x14], ebx
mov eax, dword [esp + 0x44]
cmp eax, ebx
je 0x4a9695
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x44], ebx
mov eax, dword [esp + 0x30]
cmp eax, ebx
je 0x4a96a9
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
mov dword [esp + 0x30], ebx
lea ecx, [esp + 0x28]
call fcn.00498940
mov eax, dword [esp + 0x18]
cmp eax, ebx
je 0x4a96c2
mov ecx, dword [eax]
mov edx, dword [ecx + 8]
push eax
call edx
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret 0x20