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

Disassembly:
sub esp, 0xf8
mov eax, dword [0x47d874]
xor eax, esp
mov dword [esp + 0xf4], eax
push ebx
mov ebx, dword [esp + 0x100]
push ebp
push esi
xor esi, esi
mov ebp, 7
push edi
mov edi, dword [esp + 0x110]
push edi
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x18], esi
mov dword [esp + 0x54], ebp
mov dword [esp + 0x50], esi
mov word [esp + 0x40], si
mov dword [esp + 0x70], ebp
mov dword [esp + 0x6c], esi
mov word [esp + 0x5c], si
mov dword [esp + 0xc4], ebp
mov dword [esp + 0xc0], esi
mov word [esp + 0xb0], si
mov dword [esp + 0xa8], ebp
mov dword [esp + 0xa4], esi
mov word [esp + 0x94], si
mov dword [esp + 0x8c], ebp
mov dword [esp + 0x88], esi
mov word [esp + 0x78], si
call fcn.00430f50
add esp, 4
test eax, eax
mov eax, edi
lea edx, [eax + 2]
je 0x431420
mov dword [ebx + 0x18], ebp
mov dword [ebx + 0x14], esi
mov word [ebx + 4], si
mov edi, edi
mov cx, word [eax]
add eax, 2
cmp cx, si
jne 0x431340
sub eax, edx
sar eax, 1
push eax
push edi
mov ecx, ebx
call fcn.0040e867
mov edi, 8
cmp dword [esp + 0x88], edi
jb 0x431373
mov eax, dword [esp + 0x74]
push eax
call fcn.0044e46d
add esp, 4
cmp dword [esp + 0xa4], edi
mov dword [esp + 0x88], ebp
mov dword [esp + 0x84], esi
mov word [esp + 0x74], si
jb 0x43139f
mov ecx, dword [esp + 0x90]
push ecx
call fcn.0044e46d
add esp, 4
cmp dword [esp + 0xc0], edi
mov dword [esp + 0xa4], ebp
mov dword [esp + 0xa0], esi
mov word [esp + 0x90], si
jb 0x4313ce
mov edx, dword [esp + 0xac]
push edx
call fcn.0044e46d
add esp, 4
cmp dword [esp + 0x6c], edi
mov dword [esp + 0xc0], ebp
mov dword [esp + 0xbc], esi
mov word [esp + 0xac], si
jb 0x4313f7
mov eax, dword [esp + 0x58]
push eax
call fcn.0044e46d
add esp, 4
cmp dword [esp + 0x50], edi
mov dword [esp + 0x6c], ebp
mov dword [esp + 0x68], esi
mov word [esp + 0x58], si
jb 0x431417
mov ecx, dword [esp + 0x3c]
push ecx
call fcn.0044e46d
add esp, 4
mov eax, ebx
jmp 0x43190b
mov cx, word [eax]
add eax, 2
cmp cx, si
jne 0x431420
sub eax, edx
sar eax, 1
push eax
push edi
lea ecx, [esp + 0x40]
call fcn.0040e867
push 1
push 0xffffffffffffffff
lea edx, [esp + 0x18]
push edx
lea ecx, [esp + 0x44]
mov dword [esp + 0x1c], 0x5c
call fcn.00422600
cmp eax, 0xffffffff
je 0x4314ed
lea edi, [eax + 1]
push edi
push esi
lea eax, [esp + 0x40]
push eax
lea ecx, [esp + 0x28]
mov dword [esp + 0x40], ebp
mov dword [esp + 0x3c], esi
mov word [esp + 0x2c], si
call fcn.0040eaf8
push 0xffffffffffffffff
push esi
lea ecx, [esp + 0x24]
push ecx
lea ecx, [esp + 0x98]
call fcn.0040eaf8
mov ebx, 8
cmp dword [esp + 0x34], ebx
jb 0x4314a9
mov edx, dword [esp + 0x20]
push edx
call fcn.0044e46d
add esp, 4
push 0xffffffffffffffff
push edi
lea eax, [esp + 0x40]
push eax
lea ecx, [esp + 0x28]
mov dword [esp + 0x40], ebp
mov dword [esp + 0x3c], esi
mov word [esp + 0x2c], si
call fcn.0040eaf8
push 0xffffffffffffffff
push esi
lea ecx, [esp + 0x24]
push ecx
lea ecx, [esp + 0x60]
call fcn.0040eaf8
cmp dword [esp + 0x34], ebx
jb 0x431515
mov edx, dword [esp + 0x20]
push edx
call fcn.0044e46d
add esp, 4
jmp 0x431515
push 0xffffffffffffffff
push esi
lea eax, [esp + 0x40]
push eax
lea ecx, [esp + 0x60]
call fcn.0040eaf8
push esi
push 0x472d34
lea ecx, [esp + 0x94]
call fcn.0040e867
mov ebx, 8
push 0xffffffffffffffff
push esi
lea ecx, [esp + 0x5c]
push ecx
lea ecx, [esp + 0x44]
call fcn.0040eaf8
push 1
push esi
lea edx, [esp + 0x18]
push edx
lea ecx, [esp + 0x44]
mov dword [esp + 0x1c], 0x2e
call fcn.00425070
mov edi, eax
cmp edi, 0xffffffff
je 0x4315d3
push edi
push esi
lea eax, [esp + 0x40]
push eax
lea ecx, [esp + 0x28]
mov dword [esp + 0x40], ebp
mov dword [esp + 0x3c], esi
mov word [esp + 0x2c], si
call fcn.0040eaf8
push 0xffffffffffffffff
push esi
lea ecx, [esp + 0x24]
push ecx
lea ecx, [esp + 0x60]
call fcn.0040eaf8
cmp dword [esp + 0x34], ebx
jb 0x43158b
mov edx, dword [esp + 0x20]
push edx
call fcn.0044e46d
add esp, 4
push 0xffffffffffffffff
add edi, 1
push edi
lea eax, [esp + 0x40]
push eax
lea ecx, [esp + 0x28]
mov dword [esp + 0x40], ebp
mov dword [esp + 0x3c], esi
mov word [esp + 0x2c], si
call fcn.0040eaf8
push 0xffffffffffffffff
push esi
lea ecx, [esp + 0x24]
push ecx
lea ecx, [esp + 0xb4]
call fcn.0040eaf8
cmp dword [esp + 0x34], ebx
jb 0x4315d3
mov edx, dword [esp + 0x20]
push edx
call fcn.0044e46d
add esp, 4
push 0xffffffffffffffff
push esi
lea eax, [esp + 0x5c]
push eax
lea ecx, [esp + 0x44]
call fcn.0040eaf8
push 1
push esi
push 0x46e798
lea ecx, [esp + 0x44]
call fcn.00425070
push 1
push 0xffffffffffffffff
push 0x46e794
lea ecx, [esp + 0x44]
mov edi, eax
call fcn.00422600
cmp edi, esi
mov ebx, eax
mov eax, dword [esp + 0x4c]
jne 0x43161e
lea ecx, [eax - 1]
cmp ebx, ecx
je 0x431705
add eax, 0xffffffff
cmp ebx, eax
je 0x43162e
cmp ebx, 0xffffffff
jne 0x431705
cmp edi, 0xffffffff
je 0x431705
cmp ebx, 0xffffffff
je 0x431705
mov edx, ebx
sub edx, edi
sub edx, 1
mov dword [esp + 0x34], ebp
push edx
lea ebp, [edi + 1]
push ebp
lea eax, [esp + 0x40]
push eax
lea ecx, [esp + 0x28]
mov dword [esp + 0x3c], esi
mov word [esp + 0x2c], si
call fcn.0040eaf8
push 0xffffffffffffffff
push esi
lea ecx, [esp + 0x24]
push ecx
lea ecx, [esp + 0x7c]
call fcn.0040eaf8
cmp dword [esp + 0x34], 8
jb 0x43168c
mov edx, dword [esp + 0x20]
push edx
call fcn.0044e46d
add esp, 4
cmp ebp, ebx
lea ecx, [esp + 0x70]
jne 0x4316a7
push 0x472d34
call fcn.0040d9b9
push edi
push esi
lea eax, [esp + 0x24]
push eax
jmp 0x4316e1
push 0xb
push esi
push str._0123456789
call fcn.00430f80
cmp eax, 0xffffffff
je 0x4316da
push 0x472d34
lea ecx, [esp + 0x74]
call fcn.0040d9b9
push 0xffffffffffffffff
push esi
lea ecx, [esp + 0x40]
push ecx
lea ecx, [esp + 0x60]
call fcn.0040eaf8
jmp 0x431700
push edi
push esi
lea edx, [esp + 0x24]
push edx
lea ecx, [esp + 0x44]
call fcn.00422e50
push 0xffffffffffffffff
push esi
push eax
lea ecx, [esp + 0x60]
call fcn.0040eaf8
lea ecx, [esp + 0x1c]
call fcn.00402230
mov ebp, 7
push 0xffffffffffffffff
push esi
lea eax, [esp + 0x94]
push eax
lea ecx, [esp + 0x28]
mov dword [esp + 0x40], ebp
mov dword [esp + 0x3c], esi
mov word [esp + 0x2c], si
call fcn.0040eaf8
push 0xffffffffffffffff
push esi
lea ecx, [esp + 0x5c]
push ecx
lea ecx, [esp + 0x28]
call fcn.0040ea4f
mov edi, dword [esp + 0x14]
cmp edi, esi
je 0x4317a2
push 1
push 0x46e798
lea ecx, [esp + 0x24]
call fcn.0040e7c8
push edi
push 0x46e774
lea edx, [esp + 0xcc]
push 0x40
push edx
call fcn.00425040
lea eax, [esp + 0xd4]
add esp, 0x10
lea edx, [eax + 2]
mov cx, word [eax]
add eax, 2
cmp cx, si
jne 0x431771
sub eax, edx
sar eax, 1
push eax
lea eax, [esp + 0xc8]
push eax
lea ecx, [esp + 0x24]
call fcn.0040e7c8
push 1
push 0x46e794
lea ecx, [esp + 0x24]
call fcn.0040e7c8
cmp dword [esp + 0xbc], esi
je 0x4317cf
push 1
push 0x46dcb4
lea ecx, [esp + 0x24]
call fcn.0040e7c8
push 0xffffffffffffffff
push esi
lea ecx, [esp + 0xb0]
push ecx
lea ecx, [esp + 0x28]
call fcn.0040ea4f
mov eax, dword [esp + 0x20]
mov ebx, 8
cmp dword [esp + 0x34], ebx
jae 0x4317e2
lea eax, [esp + 0x20]
push eax
call fcn.00430f50
add esp, 4
test eax, eax
jne 0x431812
add edi, 1
cmp dword [esp + 0x34], ebx
mov dword [esp + 0x14], edi
jb 0x431705
mov edx, dword [esp + 0x20]
push edx
call fcn.0044e46d
add esp, 4
jmp 0x431705
mov edi, dword [esp + 0x18]
push 0xffffffffffffffff
push esi
lea eax, [esp + 0x24]
mov dword [edi + 0x18], ebp
mov dword [edi + 0x14], esi
push eax
mov ecx, edi
mov word [edi + 4], si
call fcn.0040eaf8
cmp dword [esp + 0x34], ebx
jb 0x431842
mov ecx, dword [esp + 0x20]
push ecx
call fcn.0044e46d
add esp, 4
cmp dword [esp + 0x88], ebx
mov dword [esp + 0x34], ebp
mov dword [esp + 0x30], esi
mov word [esp + 0x20], si
jb 0x431865
mov edx, dword [esp + 0x74]
push edx
call fcn.0044e46d
add esp, 4
cmp dword [esp + 0xa4], ebx
mov dword [esp + 0x88], ebp
mov dword [esp + 0x84], esi
mov word [esp + 0x74], si
jb 0x431891
mov eax, dword [esp + 0x90]
push eax
call fcn.0044e46d
add esp, 4
cmp dword [esp + 0xc0], ebx
mov dword [esp + 0xa4], ebp
mov dword [esp + 0xa0], esi
mov word [esp + 0x90], si
jb 0x4318c0
mov ecx, dword [esp + 0xac]
push ecx
call fcn.0044e46d
add esp, 4
cmp dword [esp + 0x6c], ebx
mov dword [esp + 0xc0], ebp
mov dword [esp + 0xbc], esi
mov word [esp + 0xac], si
jb 0x4318e9
mov edx, dword [esp + 0x58]
push edx
call fcn.0044e46d
add esp, 4
cmp dword [esp + 0x50], ebx
mov dword [esp + 0x6c], ebp
mov dword [esp + 0x68], esi
mov word [esp + 0x58], si
jb 0x431909
mov eax, dword [esp + 0x3c]
push eax
call fcn.0044e46d
add esp, 4
mov eax, edi
mov ecx, dword [esp + 0x104]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.0044e472
add esp, 0xf8
ret