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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x24]
cmp eax, dword [ecx + 8]
jbe 0x42e1a6
sub esp, 0xa4
mov eax, dword [esp + 0xa8]
mov ecx, dword [eax + 0x80]
mov dword [esp], ecx
call fcn.0040b970
mov eax, dword [0x60fd9c]
mov ecx, dword [0x5ab23c]
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], ecx
mov dword [esp + 0x9c], 0
mov dword [esp + 0xa0], 0
lea eax, [0x42e1b0]
mov dword [esp + 0x9c], eax
lea eax, [esp + 0x8c]
mov dword [esp + 0xa0], eax
mov dword [esp], 0
mov dword [esp + 4], 0
mov dword [esp + 8], 0
call fcn.0042e980
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0xa8]
xor ebx, ebx
xor ebp, ebp
mov esi, 0xffffffff
jmp 0x42d6d7
mov edi, dword [esp + 0x44]
lea ebx, [edi + 1]
mov edx, dword [esp + 0xa8]
mov ecx, dword [esp + 0x78]
mov edi, dword [esp + 0x74]
mov esi, dword [esp + 0x88]
mov ebp, esi
mov eax, edi
mov dword [esp + 0x58], ebp
cmp ebx, 4
jge 0x42d7c3
jae 0x42e199
mov dword [esp + 0x40], ecx
mov dword [esp + 0x38], esi
lea edi, [0x5ab780]
mov esi, dword [edi + ebx*4]
cmp esi, 0x20
sbb edi, edi
mov ecx, esi
mov ebp, 1
shl ebp, cl
and ebp, edi
mov dword [esp + 0x5c], ebp
lea ebp, [0x5ab790]
mov ebp, dword [ebp + ebx*4]
mov dword [esp + 0x34], ebp
mov ebp, dword [esp + 0x58]
shl ebp, cl
and ebp, edi
lea esi, [ebx + ebx*2]
mov edi, dword [edx + esi*4 + 8]
mov esi, dword [edx + esi*4]
mov ecx, esi
mov esi, dword [esp + 0x5c]
add esi, ebp
cmp edi, esi
jb 0x42e190
cmp ebp, esi
ja 0x42e187
mov dword [esp + 0x44], ebx
mov dword [esp + 0x58], ebp
mov dword [esp + 0x3c], eax
mov dword [esp + 0x88], edi
mov dword [esp + 0x98], ecx
mov eax, dword [edx + 0x34]
mov dword [esp], ebx
mov dword [esp + 4], eax
call fcn.0042c790
mov eax, dword [esp + 0x88]
mov ecx, dword [esp + 0x58]
sub eax, ecx
neg eax
mov edx, ecx
shl ecx, 3
sar eax, 0x1f
and eax, ecx
mov ecx, dword [esp + 0x98]
add eax, ecx
mov ecx, dword [esp + 8]
mov ebx, dword [esp + 0x5c]
mov ebp, ebx
neg ebx
and ebx, ecx
cmp ebx, edx
jne 0x42d7ab
lea ebx, [ebp - 1]
and ebx, ecx
jmp 0x42d7ad
xor ebx, ebx
mov dword [esp + 0x94], eax
mov dword [esp + 0x48], ebx
mov ecx, ebx
xor esi, esi
xor edi, edi
jmp 0x42da76
mov dword [esp], edx
mov dword [esp + 4], ebp
call fcn.0042ca70
mov eax, dword [esp + 8]
test byte [eax], al
mov dword [esp], eax
mov eax, dword [esp + 0xac]
mov dword [esp + 4], eax
mov dword [esp + 8], 0
call fcn.00430840
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
cmp eax, 0xffffffff
je 0x42d8a4
mov dword [esp + 0x4c], eax
mov dword [esp + 0x28], ecx
mov eax, dword [esp + 0x58]
mov dword [esp], eax
call fcn.0042c6d0
mov eax, dword [esp + 0x4c]
shl eax, 0xd
add eax, dword [esp + 4]
mov dword [esp + 0x64], eax
mov ecx, dword [esp + 0x58]
mov dword [esp], ecx
call fcn.0042c6d0
mov eax, dword [esp + 0x28]
shl eax, 0xd
add eax, dword [esp + 4]
mov dword [esp + 0x2c], eax
mov ecx, dword [esp + 0x58]
inc ecx
mov dword [esp], ecx
call fcn.0042c6d0
mov eax, dword [esp + 0x9c]
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0x2c]
mov dword [esp], edx
sub ecx, edx
mov dword [esp + 4], ecx
lea edx, [esp + 0x9c]
call eax
mov eax, dword [esp + 0x8c]
mov ecx, dword [esp + 0xa8]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0042d4b0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x64]
mov dword [esp + 0xb0], ecx
mov dword [esp + 0xb4], eax
add esp, 0xa4
ret
mov edx, dword [esp + 0xa8]
mov ecx, dword [edx + 0x28]
mov edx, dword [edx + 0x24]
mov eax, dword [esp + 0x58]
cmp eax, ecx
jae 0x42da6a
lea ecx, [edx + eax*8]
mov edx, dword [ecx]
mov dword [esp + 0x14], edx
mov ecx, dword [ecx + 4]
mov dword [esp + 0x1c], ecx
mov dword [esp + 4], ecx
mov dword [esp], edx
call fcn.0042e9f0
mov eax, dword [esp + 8]
mov dword [esp + 0x84], eax
mov ecx, dword [esp + 0x1c]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x14]
mov dword [esp], edx
call fcn.0042ea30
mov eax, dword [esp + 8]
mov dword [esp + 0x80], eax
mov ecx, dword [esp + 0x1c]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x14]
mov dword [esp], ecx
call fcn.0042ea80
mov eax, dword [esp + 8]
mov dword [esp + 0x7c], eax
call fcn.0043c950
lea eax, [0x50e0f8]
mov dword [esp], eax
mov dword [esp + 4], 0x11
call fcn.0043d240
mov dword [esp + 4], 0
mov dword [esp], 3
call fcn.0043d040
lea eax, [0x50ab4e]
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.0043d240
mov eax, dword [esp + 0x58]
mov ecx, eax
sar eax, 0x1f
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.0043d040
lea eax, [0x50af18]
mov dword [esp], eax
mov dword [esp + 4], 5
call fcn.0043d240
mov dword [esp + 4], 0
mov eax, dword [esp + 0x84]
mov dword [esp], eax
call fcn.0043cec0
lea eax, [0x50aaf6]
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.0043d240
mov dword [esp + 4], 0
mov eax, dword [esp + 0x80]
mov dword [esp], eax
call fcn.0043cec0
lea eax, [0x50aaf6]
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.0043d240
mov dword [esp + 4], 0
mov eax, dword [esp + 0x7c]
mov dword [esp], eax
call fcn.0043cec0
lea eax, [0x50aaf4]
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.0043d240
call fcn.0043c9b0
call fcn.0043c950
lea eax, [0x50e74f]
mov dword [esp], eax
mov dword [esp + 4], 0x12
call fcn.0043d240
mov dword [esp + 4], 0
mov eax, dword [esp + 0xac]
mov dword [esp], eax
call fcn.0043cec0
call fcn.0043cb60
call fcn.0043c9b0
lea eax, [0x50db42]
mov dword [esp], eax
mov dword [esp + 4], 0x10
call fcn.0043b160
call fcn.00468a00
inc ebx
mov esi, edx
mov edx, dword [esp + 0x58]
cmp ebx, ebp
jge 0x42dc34
jae 0x42e17e
mov dword [esp + 0x24], esi
lea esi, [eax + ebx*8]
mov edx, dword [esi + 4]
mov dword [esp + 0x78], edx
test edx, edx
sete dl
mov esi, dword [esi]
mov dword [esp + 0x74], esi
test esi, esi
xchg esi, ebx
sete bl
xchg esi, ebx
and edx, esi
test dl, dl
je 0x42dab0
xor edx, edx
jmp 0x42da6f
mov dword [esp + 0x54], ebx
mov dword [esp + 0x60], edi
mov eax, dword [esp + 0x34]
cmp eax, 0x20
sbb ecx, ecx
mov dword [esp + 0x70], ecx
mov edx, dword [esp + 0x44]
mov dword [esp], edx
mov ebp, dword [esp + 0x58]
lea esi, [ebx + ebp]
mov dword [esp + 0x88], esi
mov dword [esp + 4], esi
call fcn.0042c7e0
mov eax, dword [esp + 0x9c]
mov ecx, dword [esp + 8]
mov dword [esp], ecx
mov ecx, dword [esp + 0x34]
mov edx, 1
shl edx, cl
mov ebx, dword [esp + 0x70]
and edx, ebx
shl edx, 0xd
mov dword [esp + 4], edx
lea edx, [esp + 0x9c]
call eax
mov eax, dword [esp + 0x78]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x74]
mov dword [esp], ecx
call fcn.0042e9f0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x24]
lea edx, [ecx + eax]
mov ebx, dword [esp + 0xac]
cmp ebx, edx
jbe 0x42dc04
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x78]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x74]
mov dword [esp], ecx
call fcn.0042ea30
mov eax, dword [esp + 0xac]
cmp dword [esp + 8], eax
jae 0x42d6b6
mov edx, dword [esp + 0x24]
test edx, edx
je 0x42dbae
mov ecx, dword [esp + 0x34]
cmp ecx, 0x20
sbb ebx, ebx
mov ebp, 1
shl ebp, cl
and ebp, ebx
mov ebx, dword [esp + 0x30]
cmp ebx, ebp
jb 0x42dba9
add edx, ebp
mov eax, dword [esp + 0x94]
mov ecx, dword [esp + 0x48]
mov ebx, dword [esp + 0x54]
mov ebp, dword [esp + 0x5c]
mov edi, dword [esp + 0x60]
jmp 0x42da6f
cmp ecx, 0x20
jmp 0x42dbb5
mov ecx, dword [esp + 0x34]
cmp ecx, 0x20
sbb eax, eax
mov dword [esp + 0x84], eax
mov ecx, dword [esp + 0x78]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x74]
mov dword [esp], ecx
call fcn.0042ea80
mov edx, dword [esp + 8]
mov eax, dword [esp + 0x54]
lea edi, [eax + 1]
mov ecx, dword [esp + 0x34]
shl edi, cl
mov ebx, dword [esp + 0x84]
and edi, ebx
sub edi, edx
mov ecx, dword [esp + 0x48]
mov ebx, eax
mov ebp, dword [esp + 0x5c]
mov eax, dword [esp + 0x94]
jmp 0x42da6f
test ecx, ecx
jne 0x42dc1b
mov ecx, dword [esp + 0x34]
cmp ecx, 0x20
sbb edi, edi
mov eax, dword [esp + 0x54]
shl eax, cl
and edi, eax
jmp 0x42dc1f
mov edi, dword [esp + 0x60]
mov eax, dword [esp + 0x94]
mov ecx, dword [esp + 0x48]
mov ebp, dword [esp + 0x5c]
mov esi, edx
mov edx, dword [esp + 0x58]
mov ebx, dword [esp + 0xac]
cmp ebx, esi
jbe 0x42df69
mov esi, dword [esp + 0x44]
test esi, esi
je 0x42df48
mov eax, dword [esp + 0x40]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x3c]
mov dword [esp], ecx
call fcn.0042e9f0
mov eax, dword [esp + 8]
mov dword [esp + 0x84], eax
mov ecx, dword [esp + 0x40]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x3c]
mov dword [esp], edx
call fcn.0042ea30
mov eax, dword [esp + 8]
mov dword [esp + 0x80], eax
mov ecx, dword [esp + 0x40]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x3c]
mov dword [esp], ecx
call fcn.0042ea80
mov eax, dword [esp + 8]
mov dword [esp + 0x7c], eax
call fcn.0043c950
lea eax, [0x50e0f8]
mov dword [esp], eax
mov dword [esp + 4], 0x11
call fcn.0043d240
mov eax, dword [esp + 0x44]
lea ecx, [eax - 1]
mov edx, ecx
sar ecx, 0x1f
mov dword [esp + 4], ecx
mov dword [esp], edx
call fcn.0043d040
lea eax, [0x50ab4e]
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.0043d240
mov eax, dword [esp + 0x38]
mov ecx, eax
sar eax, 0x1f
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.0043d040
lea eax, [0x50ad5e]
mov dword [esp], eax
mov dword [esp + 4], 4
call fcn.0043d240
mov dword [esp + 4], 0
mov eax, dword [esp + 0x84]
mov dword [esp], eax
call fcn.0043cec0
lea eax, [0x50aaf6]
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.0043d240
mov dword [esp + 4], 0
mov eax, dword [esp + 0x80]
mov dword [esp], eax
call fcn.0043cec0
lea eax, [0x50aaf6]
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.0043d240
mov dword [esp + 4], 0
mov eax, dword [esp + 0x7c]
mov dword [esp], eax
call fcn.0043cec0
call fcn.0043cb60
call fcn.0043c9b0
call fcn.0043c950
lea eax, [0x50e0c5]
mov dword [esp], eax
mov dword [esp + 4], 0x11
call fcn.0043d240
mov eax, dword [esp + 0x44]
mov ecx, eax
sar eax, 0x1f
mov dword [esp + 0x6c], eax
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.0043d040
lea eax, [0x50c01e]
mov dword [esp], eax
mov dword [esp + 4], 0xb
call fcn.0043d240
mov dword [esp + 4], 0
mov eax, dword [esp + 0xac]
mov dword [esp], eax
call fcn.0043cec0
lea eax, [0x50b2a7]
mov dword [esp], eax
mov dword [esp + 4], 7
call fcn.0043d240
mov eax, dword [esp + 0x48]
mov ecx, eax
sar eax, 0x1f
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.0043d040
call fcn.0043cb60
call fcn.0043c9b0
mov eax, dword [esp + 0xa8]
mov eax, dword [eax + 0x34]
mov dword [esp], eax
call fcn.00432c90
mov eax, dword [esp + 4]
mov dword [esp + 0x70], eax
call fcn.0043c950
lea eax, [0x510e8f]
mov dword [esp], eax
mov dword [esp + 4], 0x18
call fcn.0043d240
mov dword [esp + 4], 0
mov eax, dword [esp + 0x70]
mov dword [esp], eax
call fcn.0043d0c0
lea eax, [0x50b068]
mov dword [esp], eax
mov dword [esp + 4], 6
call fcn.0043d240
mov eax, dword [esp + 0x58]
mov ecx, eax
sar eax, 0x1f
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.0043d040
call fcn.0043cb60
call fcn.0043c9b0
mov eax, dword [esp + 0x44]
lea ecx, [0x5ab7a0]
mov ecx, dword [ecx + eax*4]
mov dword [esp + 0x84], ecx
lea edx, [0x5ab780]
mov edx, dword [edx + eax*4]
mov dword [esp + 0x80], edx
call fcn.0043c950
lea eax, [0x512a48]
mov dword [esp], eax
mov dword [esp + 4], 0x1d
call fcn.0043d240
mov dword [esp + 4], 0
mov eax, dword [esp + 0x84]
mov dword [esp], eax
call fcn.0043cec0
lea eax, [0x50f5b2]
mov dword [esp], eax
mov dword [esp + 4], 0x15
call fcn.0043d240
mov dword [esp + 4], 0
mov eax, dword [esp + 0x80]
mov dword [esp], eax
call fcn.0043cec0
call fcn.0043cb60
call fcn.0043c9b0
mov eax, dword [esp + 0x94]
mov ecx, dword [esp + 0x5c]
xor edx, edx
jmp 0x42e157
call fcn.0042c670
mov eax, dword [esp]
mov dword [esp + 0xb0], 0
mov dword [esp + 0xb4], eax
add esp, 0xa4
ret
mov dword [esp + 0x60], edi
mov eax, dword [esp + 0x44]
mov dword [esp], eax
mov dword [esp + 4], edx
call fcn.0042c7e0
mov eax, dword [esp + 8]
mov dword [esp], eax
mov eax, dword [esp + 0x60]
shl eax, 0xd
mov dword [esp + 4], eax
call fcn.00432ba0
mov eax, dword [esp + 8]
mov dword [esp], eax
call fcn.00432c90
mov eax, dword [esp + 4]
mov dword [esp + 0x68], eax
mov ecx, dword [esp + 0x8c]
mov edx, dword [esp + 0xa8]
mov dword [esp], edx
mov dword [esp + 4], ecx
call fcn.0042d4b0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x68]
mov dword [esp + 0xb0], ecx
mov dword [esp + 0xb4], eax
add esp, 0xa4
ret
mov dword [esp + 0x50], edx
lea ecx, [eax + edx*8]
mov ebx, dword [ecx]
mov dword [esp + 0x18], ebx
mov ecx, dword [ecx + 4]
mov dword [esp + 0x20], ecx
mov dword [esp + 4], ecx
mov dword [esp], ebx
call fcn.0042e9f0
mov eax, dword [esp + 8]
mov dword [esp + 0x84], eax
mov ecx, dword [esp + 0x20]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x18]
mov dword [esp], edx
call fcn.0042ea30
mov eax, dword [esp + 8]
mov dword [esp + 0x80], eax
mov ecx, dword [esp + 0x20]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x18]
mov dword [esp], ecx
call fcn.0042ea80
mov eax, dword [esp + 8]
mov dword [esp + 0x7c], eax
call fcn.0043c950
lea eax, [0x50e0f8]
mov dword [esp], eax
mov dword [esp + 4], 0x11
call fcn.0043d240
mov eax, dword [esp + 0x6c]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x44]
mov dword [esp], ecx
call fcn.0043d040
lea eax, [0x50ab4e]
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.0043d240
mov eax, dword [esp + 0x58]
mov ecx, dword [esp + 0x50]
lea edx, [ecx + eax]
mov ebx, edx
sar edx, 0x1f
mov dword [esp + 4], edx
mov dword [esp], ebx
call fcn.0043d040
lea eax, [0x50af18]
mov dword [esp], eax
mov dword [esp + 4], 5
call fcn.0043d240
mov dword [esp + 4], 0
mov eax, dword [esp + 0x84]
mov dword [esp], eax
call fcn.0043cec0
lea eax, [0x50aaf6]
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.0043d240
mov dword [esp + 4], 0
mov eax, dword [esp + 0x80]
mov dword [esp], eax
call fcn.0043cec0
lea eax, [0x50aaf6]
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.0043d240
mov dword [esp + 4], 0
mov eax, dword [esp + 0x7c]
mov dword [esp], eax
call fcn.0043cec0
lea eax, [0x50aaf4]
mov dword [esp], eax
mov dword [esp + 4], 2
call fcn.0043d240
call fcn.0043c9b0
mov eax, dword [esp + 0x50]
lea edx, [eax + 1]
mov eax, dword [esp + 0x94]
mov ecx, dword [esp + 0x5c]
cmp edx, ecx
jge 0x42e168
jb 0x42dfdf
mov eax, edx
call fcn.00468a00
lea eax, [0x50db42]
mov dword [esp], eax
mov dword [esp + 4], 0x10
call fcn.0043b160
mov eax, ebx
mov ecx, ebp
call fcn.00468a00
mov eax, ebp
mov ecx, esi
call fcn.00468a60
mov ecx, esi
mov edx, edi
call fcn.00468a40
mov eax, ebx
mov ecx, 4
call fcn.00468a00
nop
call fcn.00467570
jmp fcn.0042d600