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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 4]
cmp eax, dword [ecx + 8]
jbe 0x431900
sub esp, 0x84
mov edx, dword [esp + 0x8c]
mov ebx, dword [edx + 0x1c]
xor eax, eax
jmp 0x431102
mov eax, ebx
mov ebx, ebp
nop
lea ebp, [ebx + 1]
cmp byte [ebx], 0x80
jb 0x431120
test eax, eax
jl 0x4318fa
lea ebx, [eax + 7]
cmp ebx, 0x1c
jle 0x4310fe
jmp 0x4318e2
test eax, eax
jl 0x4318dd
xor eax, eax
xor ecx, ecx
jmp 0x431132
mov eax, ebx
mov ecx, esi
movzx ebx, byte [ebp]
nop
inc ebp
cmp bl, 0x80
jb 0x431166
test ecx, ecx
jl 0x4318d8
cmp ecx, 0x20
sbb esi, esi
movzx ebx, bl
and ebx, 0xffffff7f
shl ebx, cl
and ebx, esi
add ebx, eax
lea esi, [ecx + 7]
cmp esi, 0x1c
jle 0x43112e
jmp 0x4318c0
test ecx, ecx
jl 0x4318bb
cmp ecx, 0x20
sbb esi, esi
nop
movzx ebx, bl
shl ebx, cl
and ebx, esi
add ebx, eax
xor eax, eax
xor ecx, ecx
jmp 0x431189
mov eax, ebx
mov ecx, esi
mov ebx, edi
movzx esi, byte [ebp]
nop
inc ebp
xchg esi, eax
cmp al, 0x80
xchg esi, eax
jb 0x4311c4
test ecx, ecx
jl 0x4318b6
cmp ecx, 0x20
mov edi, ebx
sbb ebx, ebx
xchg esi, eax
movzx eax, al
xchg esi, eax
and esi, 0xffffff7f
shl esi, cl
and esi, ebx
lea ebx, [eax + esi]
lea esi, [ecx + 7]
cmp esi, 0x1c
jle 0x431183
jmp 0x43189e
test ecx, ecx
jl 0x431899
mov dword [esp + 0x14], ebx
mov edi, edx
mov edx, dword [edx + 0x20]
sub edx, ebx
cmp ecx, 0x20
sbb ebx, ebx
movzx edx, byte [edx]
xchg esi, eax
movzx eax, al
xchg esi, eax
shl esi, cl
and esi, ebx
lea ebx, [eax + esi - 1]
jmp 0x4311f9
mov esi, dword [esp + 0x34]
lea ebx, [esi - 1]
mov edi, eax
mov ebp, ecx
test ebx, ebx
jl 0x4313dd
mov byte [esp + 0x12], dl
xor eax, eax
xor ecx, ecx
jmp 0x4313f9
test ecx, ecx
jl 0x431877
cmp ecx, 0x20
sbb edx, edx
nop
xchg esi, eax
movzx eax, al
xchg esi, eax
shl esi, cl
and esi, edx
lea edx, [eax + esi]
mov dword [esp + 0x3c], edx
xor eax, eax
xor ecx, ecx
jmp 0x43143e
test ecx, ecx
jl 0x431855
cmp ecx, 0x20
sbb edx, edx
nop
xchg esi, eax
movzx eax, al
xchg esi, eax
shl esi, cl
and esi, edx
lea edx, [eax + esi]
mov dword [esp + 0x38], edx
xor eax, eax
xor ecx, ecx
jmp 0x431483
test ecx, ecx
jl 0x431833
mov dword [esp + 0x34], ebx
mov dword [esp + 0x70], ebp
mov dword [esp + 0x18], ecx
cmp ebx, 0x20
sbb ebp, ebp
cmp ecx, 0x20
sbb edx, edx
mov dword [esp + 0x48], edx
mov ecx, ebx
mov edx, 1
shl edx, cl
and ebp, edx
xchg esi, eax
movzx edx, al
xchg esi, eax
mov ecx, dword [esp + 0x18]
shl edx, cl
mov esi, dword [esp + 0x48]
and edx, esi
add edx, eax
movzx esi, byte [esp + 0x12]
xchg esi, eax
xchg ebp, ebx
test bl, al
xchg ebp, ebx
xchg esi, eax
jne 0x4312b6
mov ebp, dword [esp + 0x70]
xor eax, eax
jmp 0x43173e
xchg ebp, eax
mov byte [esp + 0x13], al
xchg ebp, eax
mov eax, ebx
mov ebx, dword [edi + 0x20]
mov ecx, esi
mov esi, dword [esp + 0x38]
sub ebx, esi
mov ebx, dword [ebx]
lea esi, [edi + 0x10]
mov ebp, dword [0x7e83b0]
test ebp, ebp
jne 0x4312dd
mov dword [edi + 0x10], ebx
jmp 0x4312ee
mov ebp, edi
mov edi, esi
mov eax, ebx
call fcn.00459fb0
mov eax, dword [esp + 0x34]
mov edi, ebp
mov ebp, dword [edi]
test ebp, ebp
jne 0x4312f8
xor ebp, ebp
jmp 0x4312fc
nop
lea ebp, [edi + 0x28]
mov dword [esp + 0x2c], edx
mov dword [esp + 0x74], ebx
mov dword [esp + 0x80], esi
mov dword [esp + 0x64], ebp
mov dword [esp + 0x5c], eax
xor eax, eax
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x5c]
jmp 0x431530
mov eax, dword [edi + 0x20]
mov edx, dword [esp + 0x14]
sub eax, edx
movzx esi, byte [esp + 0x13]
xchg esi, ebx
not ebx
xchg esi, ebx
and ecx, esi
mov byte [esp + 0x12], cl
mov byte [eax], cl
mov eax, dword [edi + 0x14]
mov dword [esp + 0x68], eax
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], ebp
mov ebx, dword [esp + 0x3c]
mov dword [esp + 0xc], ebx
call fcn.00431910
mov eax, dword [esp + 0x68]
test eax, eax
je 0x431379
movzx ecx, byte [eax + 0x19]
test cl, cl
jne 0x4315cb
mov ecx, dword [0x7e83b0]
test ecx, ecx
jne 0x431393
mov eax, dword [esp + 0x8c]
mov dword [eax + 0x10], 0
jmp 0x4313a1
mov edi, dword [esp + 0x80]
xor eax, eax
call fcn.00459fb0
mov eax, dword [esp + 0x64]
mov dword [esp], eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 4], eax
call fcn.0045a6a0
mov eax, dword [esp + 0x8c]
mov ecx, dword [eax + 0x14]
test ecx, ecx
je 0x4313cf
movzx edx, byte [ecx + 0x18]
test dl, dl
jne 0x4315d5
mov ecx, dword [esp + 0x7c]
movzx edx, byte [esp + 0x12]
jmp 0x4311ee
mov eax, 1
mov byte [esp + 0x90], al
add esp, 0x84
ret
mov eax, edx
mov ecx, esi
movzx edx, byte [esp + 0x12]
movzx esi, byte [ebp]
nop
inc ebp
xchg esi, eax
cmp al, 0x80
xchg esi, eax
jb 0x43120e
test ecx, ecx
jl 0x431894
cmp ecx, 0x20
sbb edx, edx
xchg esi, eax
movzx eax, al
xchg esi, eax
and esi, 0xffffff7f
shl esi, cl
and esi, edx
lea edx, [eax + esi]
lea esi, [ecx + 7]
cmp esi, 0x1c
jle 0x4313f0
jmp 0x43187c
mov eax, edx
mov ecx, esi
mov edx, dword [esp + 0x3c]
movzx esi, byte [ebp]
nop
inc ebp
xchg esi, eax
cmp al, 0x80
xchg esi, eax
jb 0x431235
test ecx, ecx
jl 0x431872
cmp ecx, 0x20
sbb edx, edx
xchg esi, eax
movzx eax, al
xchg esi, eax
and esi, 0xffffff7f
shl esi, cl
and esi, edx
lea edx, [eax + esi]
lea esi, [ecx + 7]
cmp esi, 0x1c
jle 0x431436
jmp 0x43185a
mov eax, edx
mov ecx, esi
mov edx, dword [esp + 0x38]
movzx esi, byte [ebp]
nop
inc ebp
xchg esi, eax
cmp al, 0x80
xchg esi, eax
jb 0x43125c
test ecx, ecx
jl 0x431850
cmp ecx, 0x20
sbb edx, edx
xchg esi, eax
movzx eax, al
xchg esi, eax
and esi, 0xffffff7f
shl esi, cl
and esi, edx
lea edx, [eax + esi]
lea esi, [ecx + 7]
cmp esi, 0x1c
jle 0x43147b
jmp 0x431838
mov dword [esp + 0x78], esi
cmp edx, 0x20
sbb esi, esi
movzx ebx, bl
mov ecx, edx
shl ebx, cl
and ebx, esi
mov edx, dword [esp + 0x28]
add edx, ebx
add edx, ebp
mov ebx, dword [edi + 0x20]
mov esi, dword [esp + 0x40]
sub ebx, esi
mov dword [esp], edx
mov dword [esp + 4], ebx
mov dword [esp + 8], eax
call fcn.0045a880
mov eax, dword [esp + 0x30]
inc eax
mov edx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x78]
movzx ecx, byte [esp + 0x12]
mov ebx, dword [esp + 0x74]
mov ebp, dword [esp + 0x64]
mov esi, dword [esp + 0x80]
mov edi, dword [esp + 0x8c]
mov dword [esp + 0x30], eax
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x7c], ecx
mov eax, dword [esp + 0x34]
movzx ecx, byte [esp + 0x12]
mov eax, dword [esp + 0x30]
cmp eax, edx
jae 0x43132a
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x7c]
mov dword [esp + 0x6c], eax
mov byte [esp + 0x4c], cl
xor ecx, ecx
mov dword [esp + 0x20], ecx
xor ecx, ecx
mov dword [esp + 0x1c], ecx
mov eax, dword [esp + 0x54]
movzx ecx, byte [esp + 0x4c]
jmp 0x431608
mov edx, dword [esp + 0x1c]
test edx, edx
jl 0x431715
cmp edx, 0x20
sbb eax, eax
nop
movzx ebx, bl
mov ecx, edx
shl ebx, cl
and ebx, eax
mov eax, dword [esp + 0x20]
add eax, ebx
mov dword [esp + 0x40], eax
xor ecx, ecx
xor edx, edx
jmp 0x431653
test edx, edx
jl 0x4316f3
cmp edx, 0x20
sbb eax, eax
nop
movzx ebx, bl
mov ecx, edx
shl ebx, cl
and ebx, eax
mov eax, dword [esp + 0x24]
add eax, ebx
mov dword [esp + 0x44], eax
xor ecx, ecx
xor edx, edx
jmp 0x431697
test edx, edx
jge 0x4314c0
jmp 0x4316d1
mov eax, 1
jmp 0x4313e2
movzx ecx, byte [esp + 0x12]
test cl, cl
sete al
jmp 0x4313e2
movzx ecx, byte [esp + 0x12]
mov ebx, dword [esp + 0x74]
mov dword [esp + 0x6c], esi
mov dword [esp + 0x20], eax
mov dword [esp + 0x1c], edx
mov eax, dword [esp + 0x30]
mov edx, dword [esp + 0x2c]
mov esi, dword [esp + 0x80]
mov esi, dword [esp + 0x6c]
movzx ebx, byte [esi]
nop
inc esi
cmp bl, 0x80
jb 0x431566
mov edx, dword [esp + 0x1c]
test edx, edx
jl 0x431732
cmp edx, 0x20
sbb eax, eax
movzx ebx, bl
and ebx, 0xffffff7f
mov ecx, edx
shl ebx, cl
and ebx, eax
mov eax, dword [esp + 0x20]
add eax, ebx
lea edx, [ecx + 7]
cmp edx, 0x1c
jle 0x4315e4
jmp 0x43171a
mov ecx, eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x24], ecx
movzx ebx, byte [esi]
nop
inc esi
cmp bl, 0x80
jb 0x431594
test edx, edx
jl 0x431710
cmp edx, 0x20
sbb eax, eax
movzx ebx, bl
and ebx, 0xffffff7f
mov ecx, edx
shl ebx, cl
and ebx, eax
mov eax, dword [esp + 0x24]
add eax, ebx
lea edx, [ecx + 7]
cmp edx, 0x1c
jle 0x43164d
jmp 0x4316f8
mov ecx, eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0x28], ecx
movzx ebx, byte [esi]
nop
inc esi
cmp bl, 0x80
jb 0x4315be
test edx, edx
jl 0x4316ee
cmp edx, 0x20
sbb eax, eax
movzx ebx, bl
and ebx, 0xffffff7f
mov ecx, edx
shl ebx, cl
and ebx, eax
mov eax, dword [esp + 0x28]
add eax, ebx
lea edx, [ecx + 7]
cmp edx, 0x1c
jle 0x431691
jmp 0x4316d6
call fcn.0042fd90
lea eax, [0x4d7140]
mov dword [esp], eax
lea eax, [0x50ef88]
mov dword [esp + 4], eax
call fcn.004319f0
call fcn.0042fd90
call fcn.0042fd90
lea eax, [0x4d7140]
mov dword [esp], eax
lea eax, [0x50ef88]
mov dword [esp + 4], eax
call fcn.004319f0
call fcn.0042fd90
call fcn.0042fd90
lea eax, [0x4d7140]
mov dword [esp], eax
lea eax, [0x50ef88]
mov dword [esp + 4], eax
call fcn.004319f0
call fcn.0042fd90
inc eax
mov ebp, ebx
mov ebx, dword [esp + 0x34]
cmp eax, edx
jae 0x431764
xor ecx, ecx
jmp 0x431777
test ecx, ecx
jl 0x431811
xor ecx, ecx
jmp 0x43179a
test ecx, ecx
jl 0x4317ef
xor ecx, ecx
jmp 0x4317b5
test ecx, ecx
jge 0x431737
jmp 0x4317cd
mov eax, edi
mov ecx, ebp
mov edx, esi
jmp 0x4311ee
mov ecx, ebp
mov ebp, ebx
mov ebx, dword [esp + 0x34]
nop
lea ebx, [ebp + 1]
cmp byte [ebp], 0x80
jb 0x431746
test ecx, ecx
jl 0x43182e
lea ebp, [ecx + 7]
cmp ebp, 0x1c
jle 0x43176f
jmp 0x431816
mov ecx, ebx
mov ebx, ebp
nop
lea ebp, [ebx + 1]
cmp byte [ebx], 0x80
jb 0x431752
test ecx, ecx
jl 0x43180c
lea ebx, [ecx + 7]
cmp ebx, 0x1c
jle 0x431796
jmp 0x4317f4
mov ecx, ebp
mov ebp, ebx
nop
lea ebx, [ebp + 1]
cmp byte [ebp], 0x80
jb 0x43175e
test ecx, ecx
jl 0x4317ea
lea ebp, [ecx + 7]
cmp ebp, 0x1c
jle 0x4317b1
jmp 0x4317d2
call fcn.0042fd90
lea eax, [0x4d7140]
mov dword [esp], eax
lea eax, [0x50ef88]
mov dword [esp + 4], eax
call fcn.004319f0
call fcn.0042fd90
call fcn.0042fd90
lea eax, [0x4d7140]
mov dword [esp], eax
lea eax, [0x50ef88]
mov dword [esp + 4], eax
call fcn.004319f0
call fcn.0042fd90
call fcn.0042fd90
lea eax, [0x4d7140]
mov dword [esp], eax
lea eax, [0x50ef88]
mov dword [esp + 4], eax
call fcn.004319f0
call fcn.0042fd90
call fcn.0042fd90
lea eax, [0x4d7140]
mov dword [esp], eax
lea eax, [0x50ef88]
mov dword [esp + 4], eax
call fcn.004319f0
call fcn.0042fd90
call fcn.0042fd90
lea eax, [0x4d7140]
mov dword [esp], eax
lea eax, [0x50ef88]
mov dword [esp + 4], eax
call fcn.004319f0
call fcn.0042fd90
call fcn.0042fd90
lea eax, [0x4d7140]
mov dword [esp], eax
lea eax, [0x50ef88]
mov dword [esp + 4], eax
call fcn.004319f0
call fcn.0042fd90
call fcn.0042fd90
lea eax, [0x4d7140]
mov dword [esp], eax
lea eax, [0x50ef88]
mov dword [esp + 4], eax
call fcn.004319f0
call fcn.0042fd90
call fcn.0042fd90
lea eax, [0x4d7140]
mov dword [esp], eax
lea eax, [0x50ef88]
mov dword [esp + 4], eax
call fcn.004319f0
call fcn.0042fd90
call fcn.0042fd90
lea eax, [0x4d7140]
mov dword [esp], eax
lea eax, [0x50ef88]
mov dword [esp + 4], eax
call fcn.004319f0
call fcn.0042fd90
nop
call fcn.00458b70
jmp fcn.004310d0