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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x28]
cmp eax, dword [ecx + 8]
jbe 0x737e96
sub esp, 0xa8
mov eax, dword [esp + 0xac]
cmp byte [eax + 0x49], 0xff
je 0x737e19
lea eax, [0xdc39d0]
mov dword [esp], eax
call fcn.00472a80
mov eax, dword [esp + 8]
lea ecx, [0x8bb580]
cmp dword [esp + 4], ecx
jne 0x737e0f
jne 0x737df8
mov dword [esp + 0x74], eax
mov edx, dword [eax + 0x2c]
mov ecx, dword [esp + 0xd0]
cmp edx, ecx
jl 0x737da9
cmp ecx, edx
ja 0x737e90
mov dword [eax + 0x28], ecx
mov edx, dword [eax + 0x28]
xor ecx, ecx
jmp 0x737619
mov dword [ebx + ecx*4], 0xffffffff
inc ecx
cmp ecx, edx
jge 0x73762c
mov ebx, dword [eax + 0x24]
mov ebp, dword [eax + 0x28]
cmp ecx, ebp
jb 0x737611
jmp 0x737e87
mov ecx, dword [esp + 0xb0]
test ecx, ecx
je 0x737d21
nop
mov dword [eax + 0x14], ecx
mov ecx, dword [0xdd7ec0]
test ecx, ecx
jne 0x737d09
mov ecx, dword [esp + 0xb4]
mov dword [eax + 0x18], ecx
mov byte [eax + 0x1c], 0
mov dword [eax + 0x20], 0
lea ecx, [eax + 0x14]
lea edx, [0xa55360]
mov dword [esp + 0x78], ecx
mov dword [esp + 0x40], edx
mov eax, dword [edx + 0x20]
mov dword [esp], ecx
mov ebx, dword [esp + 0xcc]
mov dword [esp + 4], ebx
call eax
mov eax, dword [esp + 8]
mov dword [esp + 0x2c], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x24], ecx
cmp eax, 0xffffffff
jne 0x737cd5
mov edx, 0xffffffff
xor ebx, ebx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x30], edx
mov ebp, dword [esp + 0xcc]
test ebp, ebp
jne 0x737c9d
nop
mov esi, eax
mov edi, 0xffffffff
mov edx, dword [esp + 0xac]
mov ebx, dword [edx + 0xc]
mov edx, dword [ebx + 0xc]
mov ebp, dword [ebx]
mov ebx, dword [ebx + 4]
cmp edx, ebx
jae 0x737e7e
mov dword [esp + 0x3c], edx
mov dword [esp + 0x44], eax
mov dword [esp + 0x48], edi
lea ebx, [edx + edx*8]
lea ebx, [ebp + ebx*4]
mov ebp, edi
lea edi, [esp + 0x84]
mov esi, ebx
call fcn.00457766
mov ecx, dword [esp + 0xcc]
test ecx, ecx
je 0x737c69
xor ebx, ebx
test bl, bl
je 0x737c5b
mov ebx, dword [esp + 0xac]
mov esi, ebx
mov ebx, dword [ebx + 0x28]
test ebx, ebx
jg 0x737c27
xor ebx, ebx
test bl, bl
jne 0x737b52
mov ebx, dword [esp + 0x24]
mov edi, dword [esp + 0x30]
mov ebx, dword [esp + 0x2c]
mov dword [esp + 0x38], ebx
mov ebx, dword [esp + 0x24]
mov dword [esp + 0x6c], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x6c]
jmp 0x73777f
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0x5c], eax
mov eax, edx
mov edx, ecx
mov ecx, ebp
mov ebp, eax
mov eax, dword [esp + 0x64]
mov dword [esp + 0x48], ebp
mov dword [esp + 0x24], ebx
mov ebx, dword [esi + 0xc]
mov ebp, dword [ebx]
mov ebx, dword [ebx + 4]
cmp edx, ebx
jae 0x737e75
mov dword [esp + 0xcc], ecx
mov dword [esp + 0x28], edi
lea edx, [edx + edx*8]
lea edx, [ebp + edx*4]
mov ebx, edi
lea edi, [esp + 0x84]
mov ebp, esi
mov esi, edx
call fcn.00457766
mov ecx, dword [esp + 0x88]
mov dword [esp + 0x58], ecx
movzx edx, byte [esp + 0x84]
cmp dl, 5
ja 0x737a28
mov dword [esp + 0x54], eax
cmp dl, 2
ja 0x73787a
cmp dl, 1
jbe 0x737834
mov edx, dword [esp + 0x8c]
mov esi, ebp
mov ebp, dword [esp + 0x74]
mov edi, ebx
mov ebx, dword [ebp + 0x24]
mov ebp, dword [ebp + 0x28]
cmp edx, ebp
jge 0x73782b
jae 0x737e41
mov ebp, dword [esp + 0xcc]
mov dword [ebx + edx*4], ebp
mov edx, dword [esp + 0x48]
mov ebx, dword [esp + 0x24]
mov edx, dword [esp + 0x34]
mov dword [esp + 0x38], edx
mov edx, dword [esp + 0x48]
jmp 0x73775f
mov ebp, dword [esp + 0xcc]
jmp 0x737812
lea eax, [esp + 0x84]
mov dword [esp], eax
mov ecx, dword [esp + 0x34]
mov dword [esp + 4], ecx
call fcn.007384c0
mov ecx, dword [esp + 8]
mov esi, dword [esp + 0xac]
mov edx, dword [esp + 0x48]
mov eax, dword [esp + 0x54]
mov ebx, dword [esp + 0x24]
mov edi, dword [esp + 0x28]
mov ebp, dword [esp + 0x34]
mov dword [esp + 0x38], ebp
mov ebp, dword [esp + 0xcc]
jmp 0x73775f
cmp dl, 3
jne 0x7379e5
mov dword [esp], eax
mov ecx, dword [esp + 0x48]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x8c]
mov byte [esp + 8], dl
call fcn.007363b0
movzx eax, byte [esp + 0xc]
test al, al
je 0x7378d6
mov esi, dword [esp + 0xac]
mov ecx, dword [esp + 0x58]
mov edx, dword [esp + 0x48]
mov eax, dword [esp + 0x54]
mov ebx, dword [esp + 0x24]
mov edi, dword [esp + 0x28]
mov ebp, dword [esp + 0x34]
mov dword [esp + 0x38], ebp
mov ebp, dword [esp + 0xcc]
jmp 0x73775f
xor eax, eax
test al, al
je 0x7379b1
mov eax, dword [esp + 0x74]
mov ecx, dword [eax + 0x28]
mov edx, dword [esp + 0xd8]
lea ebx, [edx + ecx]
mov dword [esp + 0x50], ebx
mov ebp, dword [eax + 0x24]
mov esi, dword [esp + 0xdc]
cmp ebx, esi
ja 0x737968
mov edi, dword [esp + 0xd4]
mov dword [esp + 0x80], edi
mov dword [esp + 0xdc], esi
lea eax, [edi + edx*4]
mov dword [esp], eax
mov dword [esp + 4], ebp
shl ecx, 2
mov dword [esp + 8], ecx
call fcn.004579b0
mov eax, dword [esp + 0x74]
mov dword [esp], eax
call fcn.007374b0
mov eax, dword [esp + 0x80]
mov dword [esp + 0xe0], eax
mov eax, dword [esp + 0x50]
mov dword [esp + 0xe4], eax
mov eax, dword [esp + 0xdc]
mov dword [esp + 0xe8], eax
add esp, 0xa8
ret
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x7c], ebp
lea eax, [0x8ead00]
mov dword [esp], eax
mov eax, dword [esp + 0xd4]
mov dword [esp + 4], eax
mov dword [esp + 8], edx
mov dword [esp + 0xc], esi
mov dword [esp + 0x10], ebx
call fcn.00440660
mov edi, dword [esp + 0x14]
mov esi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x4c]
mov edx, dword [esp + 0xd8]
mov ebp, dword [esp + 0x7c]
jmp 0x73790a
mov eax, dword [esp + 0x74]
mov dword [esp], eax
call fcn.007374b0
mov dword [esp + 0xe0], 0
mov dword [esp + 0xe4], 0
mov dword [esp + 0xe8], 0
add esp, 0xa8
ret
cmp dl, 4
jne 0x737a21
mov edx, dword [esp + 0x74]
mov ebx, dword [edx + 0x24]
mov ebp, dword [edx + 0x28]
test ebp, ebp
jle 0x737a17
mov dword [ebx], 0
mov ecx, dword [edx + 0x28]
mov ebx, dword [edx + 0x24]
cmp ecx, 1
jbe 0x737e53
mov eax, dword [esp + 0xcc]
mov dword [ebx + 4], eax
mov eax, 1
jmp 0x7378d8
xor eax, eax
jmp 0x7378d8
cmp dl, 7
ja 0x737afd
cmp dl, 6
jne 0x737a5c
mov esi, ebp
mov edx, dword [esp + 0x48]
mov ebx, dword [esp + 0x24]
mov edi, dword [esp + 0x28]
mov edx, dword [esp + 0x34]
mov dword [esp + 0x38], edx
mov ebp, dword [esp + 0xcc]
mov edx, dword [esp + 0x48]
jmp 0x73775f
lea eax, [esp + 0x84]
mov dword [esp], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 4], eax
call fcn.0072ecc0
cmp dword [esp + 8], 0xffffffff
je 0x737af6
mov edx, dword [esp + 0x24]
test edx, edx
je 0x737aef
mov ebx, dword [esp + 0xcc]
add edx, ebx
mov ebx, dword [esp + 0x28]
cmp ebx, 0xffffffff
jne 0x737abe
mov eax, ebx
mov ecx, dword [esp + 0x20]
mov esi, dword [esp + 0xac]
mov edi, ebx
mov dword [esp + 0x38], eax
mov ebp, edx
mov edx, dword [esp + 0x34]
mov ebx, dword [esp + 0x20]
mov dword [esp + 0x20], ecx
mov ecx, dword [esp + 0x58]
jmp 0x73775f
mov dword [esp + 0x50], edx
mov eax, dword [esp + 0x40]
mov ecx, dword [eax + 0x20]
mov ebx, dword [esp + 0x78]
mov dword [esp], ebx
mov ebp, dword [esp + 0x20]
lea esi, [edx + ebp]
mov dword [esp + 4], esi
call ecx
mov ecx, dword [esp + 0xc]
mov ebx, dword [esp + 8]
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x50]
jmp 0x737a9a
xor eax, eax
jmp 0x7378d8
xor eax, eax
jmp 0x7378d8
cmp dl, 8
jne 0x737b2c
mov edx, dword [esp + 0x94]
mov ebp, dword [esp + 0x90]
test edx, edx
jbe 0x737e4a
mov edx, dword [esp + 0x34]
cmp dword [ebp], edx
je 0x737a7a
xor eax, eax
jmp 0x7378d8
cmp dl, 9
je 0x737a7a
cmp dl, 0xa
jne 0x737e5d
mov edx, dword [esp + 0x34]
cmp edx, 0xa
jne 0x737a7a
xor eax, eax
jmp 0x7378d8
mov eax, dword [esp + 0x40]
mov ecx, dword [eax + 0x18]
mov edx, dword [esp + 0x78]
mov dword [esp], edx
mov dword [esp + 4], esi
call ecx
movzx eax, byte [esp + 8]
test al, al
je 0x737c20
mov eax, dword [esp + 0xac]
mov ecx, dword [eax + 0x28]
mov edx, dword [esp + 0x40]
mov ebx, dword [edx + 0x20]
mov ebp, dword [esp + 0x78]
mov dword [esp], ebp
mov esi, dword [esp + 0xcc]
add ecx, esi
mov dword [esp + 0xcc], ecx
mov dword [esp + 4], ecx
call ebx
mov eax, dword [esp + 8]
mov dword [esp + 0x38], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x24], ecx
mov edx, dword [esp + 0x40]
mov ebx, dword [edx + 0x20]
mov ebp, dword [esp + 0x78]
mov dword [esp], ebp
mov esi, dword [esp + 0xcc]
lea edi, [esi + ecx]
mov dword [esp + 4], edi
call ebx
mov eax, dword [esp + 8]
mov dword [esp + 0x30], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x20], ecx
mov edx, dword [esp + 0x40]
mov ebx, dword [edx + 0x14]
mov ebp, dword [esp + 0x78]
mov dword [esp], ebp
mov esi, dword [esp + 0xcc]
mov dword [esp + 4], esi
call ebx
mov eax, dword [esp + 8]
mov ebp, dword [esp + 0xc]
mov esi, dword [esp + 0xac]
mov edx, dword [esi + 0x3c]
mov ebx, dword [esp + 0x24]
mov edi, dword [esp + 0x30]
mov ecx, dword [esp + 0xcc]
jmp 0x73774d
xor eax, eax
jmp 0x7378d8
mov eax, dword [esp + 0x40]
mov ecx, dword [eax + 0x10]
mov edx, dword [esp + 0x78]
mov dword [esp], edx
call ecx
movzx ebx, byte [esp + 4]
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0xcc]
mov edx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x48]
mov esi, dword [esp + 0xac]
jmp 0x737731
mov esi, dword [esp + 0xac]
xor ebx, ebx
jmp 0x737731
mov dword [esp], eax
mov dword [esp + 4], ebp
mov ecx, dword [esp + 0x8c]
mov byte [esp + 8], cl
call fcn.007363b0
movzx ebx, byte [esp + 0xc]
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0xcc]
mov edx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x48]
jmp 0x737713
mov eax, dword [esp + 0x40]
mov ecx, dword [eax + 0x14]
mov edx, dword [esp + 0x78]
mov dword [esp], edx
mov dword [esp + 4], ebp
call ecx
mov eax, dword [esp + 8]
mov edi, dword [esp + 0xc]
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x20]
mov ebp, dword [esp + 0xcc]
mov esi, dword [esp + 0x2c]
jmp 0x7376c5
mov eax, dword [esp + 0x40]
mov edx, dword [eax + 0x20]
mov ebx, dword [esp + 0x78]
mov dword [esp], ebx
mov ebp, dword [esp + 0xcc]
lea esi, [ebp + ecx]
mov dword [esp + 4], esi
call edx
mov edx, dword [esp + 8]
mov ebx, dword [esp + 0xc]
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x24]
jmp 0x7376a6
lea edi, [eax + 0x18]
mov ecx, eax
mov eax, dword [esp + 0xb4]
call fcn.00456fe0
mov eax, ecx
jmp 0x737657
mov ecx, dword [esp + 0xb8]
test ecx, ecx
je 0x737d67
nop
mov edx, dword [esp + 0xbc]
mov dword [eax + 4], edx
mov edx, dword [esp + 0xc0]
mov dword [eax + 8], edx
mov edx, dword [0xdd7ec0]
test edx, edx
jne 0x737d5a
mov dword [eax], ecx
mov ecx, eax
lea edx, [0xa55320]
jmp 0x73766b
mov edi, eax
mov eax, ecx
call fcn.00456fe0
mov eax, edi
jmp 0x737d4d
nop
mov ecx, dword [esp + 0xc8]
mov dword [eax + 0x10], ecx
mov ecx, dword [0xdd7ec0]
test ecx, ecx
jne 0x737d94
mov ecx, dword [esp + 0xc4]
mov dword [eax + 0xc], ecx
lea ecx, [eax + 0xc]
lea edx, [0xa553a0]
jmp 0x73766b
lea edi, [eax + 0xc]
mov ecx, eax
mov eax, dword [esp + 0xc4]
call fcn.00456fe0
mov eax, ecx
jmp 0x737d86
lea eax, [0x8ead00]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], ecx
call fcn.00440500
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0xd0]
mov edi, dword [esp + 0x74]
mov dword [edi + 0x28], ecx
mov dword [edi + 0x2c], ecx
mov ecx, dword [0xdd7ec0]
test ecx, ecx
jne 0x737de8
mov dword [edi + 0x24], eax
mov eax, edi
jmp 0x73760a
lea edx, [edi + 0x24]
mov ecx, edi
mov edi, edx
call fcn.00456fe0
mov edi, ecx
jmp 0x737de1
lea eax, [0x91c000]
mov dword [esp], eax
call fcn.0040ae10
mov eax, dword [esp + 4]
jmp 0x7375e9
mov eax, 0
jmp 0x7375e3
mov dword [esp + 0xe0], 0
mov dword [esp + 0xe4], 0
mov dword [esp + 0xe8], 0
add esp, 0xa8
ret
mov eax, edx
mov ecx, ebp
call fcn.00457070
xor eax, eax
mov ecx, edx
call fcn.00457060
mov eax, 1
call fcn.00457060
lea eax, [0x8eba40]
mov dword [esp], eax
lea eax, [0xa45f78]
mov dword [esp + 4], eax
call fcn.0042cff0
mov eax, edx
mov ecx, ebx
call fcn.00457060
mov eax, edx
mov ecx, ebx
call fcn.00457060
mov eax, ecx
mov ecx, ebp
call fcn.00457060
call fcn.004570a0
nop
call fcn.004557a0
jmp fcn.00737590