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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x6209b6
sub esp, 0x64
mov eax, 0
lea edi, [esp + 0x4c]
call fcn.0044c96a
mov eax, dword [esp + 0x68]
mov edx, dword [eax]
movzx edx, byte [edx + 0x44]
mov byte [eax + 0x50], 0
mov ebx, dword [esp + 0x6c]
mov ebp, dword [ebx]
mov ecx, edx
mov edx, dword [ebp + 4]
mov ebp, dword [ebp]
mov esi, eax
mov eax, dword [esp + 0x78]
cmp eax, edx
jae 0x6209af
mov byte [esp + 0x23], cl
lea edx, [eax + eax*2]
shl edx, 3
movzx edx, byte [ebp + edx]
cmp dl, 5
je 0x620919
mov edx, dword [ebx + 4]
inc edx
imul edx, eax
mov ebp, dword [esp + 0x7c]
add edx, ebp
mov dword [esp + 0x3c], edx
mov edi, ebp
mov ebp, dword [ebx + 0x24]
mov eax, dword [ebx + 0x20]
shr edx, 5
cmp edx, ebp
jae 0x6209a8
mov ebp, dword [eax + edx*4]
mov ecx, dword [esp + 0x3c]
mov ebx, 1
shl ebx, cl
test ebp, ebx
je 0x62090a
xor eax, eax
test al, al
je 0x620901
mov eax, dword [esp + 0x6c]
mov ecx, dword [eax + 0x1c]
mov edx, dword [eax + 0x18]
mov ebx, dword [eax + 0x14]
lea ebp, [edx + 1]
cmp ebp, ecx
jg 0x6208a4
lea ecx, [edx + 1]
mov dword [eax + 0x18], ecx
lea ecx, [edx + edx*2]
mov edx, dword [esp + 0x78]
mov dword [ebx + ecx*4], edx
lea edx, [ebx + ecx*4]
mov byte [edx + 4], 0
mov dword [ebx + ecx*4 + 8], edi
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x74]
jmp 0x620123
mov eax, dword [esp + 0x70]
mov ecx, dword [esp + 0x74]
mov edx, dword [esp + 0x28]
movzx ebx, byte [esp + 0x22]
mov eax, edi
mov edx, dword [esp + 0x48]
mov ebp, dword [esp + 0x70]
mov edi, ecx
mov dword [esp + 0x30], esi
mov ecx, dword [esp + 0x28]
mov esi, dword [esp + 0x68]
mov edx, dword [eax]
mov ebp, dword [edx]
mov edx, dword [edx + 4]
mov eax, dword [esp + 0x30]
cmp eax, edx
jae 0x62099a
mov dword [esp + 0x2c], ecx
mov byte [esp + 0x22], bl
lea edx, [eax + eax*2]
lea ebp, [ebp + edx*8]
lea edi, [esp + 0x4c]
mov esi, ebp
call fcn.0044ce44
movzx ecx, byte [esp + 0x4c]
cmp cl, 4
ja 0x62071f
shl edx, 3
cmp cl, 1
ja 0x6204a7
test cl, cl
jne 0x620246
test bl, bl
je 0x620184
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x2c]
xor edx, edx
mov ebx, dword [esp + 0x6c]
mov ebp, dword [ebx + 4]
inc ebp
imul ebp, eax
add ebp, ecx
mov dword [esp + 0x3c], ebp
mov esi, eax
mov eax, dword [ebx + 0x24]
mov edi, ebx
mov ebx, dword [ebx + 0x20]
shr ebp, 5
cmp ebp, eax
jae 0x6209a1
mov dword [esp + 0x28], ecx
mov byte [esp + 0x22], dl
mov eax, dword [ebx + ebp*4]
mov ecx, dword [esp + 0x3c]
mov edx, 1
shl edx, cl
test eax, edx
je 0x620178
xor eax, eax
test al, al
jne 0x62003d
mov ebx, dword [esp + 0x70]
mov ebp, dword [esp + 0x74]
mov eax, edi
mov ecx, ebx
mov edx, ebp
mov esi, dword [esp + 0x68]
mov ebx, dword [eax + 0x18]
mov ebp, dword [eax + 0x14]
test ebx, ebx
jle 0x620895
mov edi, edx
lea edx, [ebx - 1]
lea ebx, [ebx + ebx*2]
mov dword [esp + 0x3c], ebx
mov ecx, dword [ebp + ebx*4 - 0xc]
mov dword [esp + 0x34], ecx
shl ebx, 2
mov ecx, dword [esp + 0x3c]
mov ecx, dword [ebp + ecx*4 - 4]
movzx ebx, byte [ebx + ebp - 8]
mov dword [eax + 0x18], edx
lea edx, [eax + 0x14]
mov dword [esp + 0x48], edx
mov ebp, dword [esp + 0x70]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x40]
jmp 0x620066
or edx, eax
mov dword [ebx + ebp*4], edx
mov eax, 1
jmp 0x620109
mov ebp, dword [esp + 0x6c]
mov ecx, ebx
mov ebx, dword [ebp]
mov esi, ebp
mov ebp, dword [ebx + 4]
mov ebx, dword [ebx]
cmp eax, ebp
jae 0x62095f
movzx edx, byte [edx + ebx]
cmp dl, 5
je 0x620240
mov edx, dword [esi + 0x18]
mov ebx, dword [esi + 0x14]
mov ebp, dword [esi + 0x1c]
mov edi, eax
lea eax, [edx + 1]
cmp eax, ebp
jg 0x6201e6
lea eax, [edx + 1]
mov dword [esi + 0x18], eax
lea eax, [edx + edx*2]
mov dword [ebx + eax*4], edi
lea edx, [ebx + eax*4]
mov byte [edx + 4], 1
mov edx, dword [esp + 0x2c]
mov dword [ebx + eax*4 + 8], edx
mov eax, dword [esp + 0x50]
mov ecx, edx
movzx edx, byte [esp + 0x22]
jmp 0x6200c7
lea ecx, [0x79c800]
mov dword [esp], ecx
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], eax
call fcn.00438b10
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x6c]
mov dword [ebx + 0x1c], edx
mov edx, dword [0xadb480]
test edx, edx
jne 0x620235
mov dword [ebx + 0x14], eax
mov esi, ebx
mov edi, dword [esp + 0x30]
mov edx, ecx
mov ebx, eax
movzx ecx, byte [esp + 0x22]
jmp 0x6201bb
mov edi, dword [esp + 0x48]
call fcn.0044c870
jmp 0x620224
mov edx, dword [esp + 0x2c]
jmp 0x6201d6
mov eax, dword [esp + 0x6c]
mov edx, dword [eax]
mov ebp, dword [edx]
mov edx, dword [edx + 4]
mov ebx, dword [esp + 0x50]
cmp ebx, edx
jae 0x620958
mov esi, ebx
lea ebx, [ebx + ebx*2]
shl ebx, 3
movzx ebx, byte [ebx + ebp]
mov edi, ebp
lea ebp, [ebx - 7]
xchg ebp, eax
cmp al, 3
xchg ebp, eax
ja 0x62039b
mov ebx, dword [esp + 0x54]
cmp ebx, edx
jae 0x620951
lea edx, [ebx + ebx*2]
shl edx, 3
movzx edx, byte [edx + edi]
cmp dl, 5
je 0x620394
mov edx, dword [eax + 4]
inc edx
imul edx, ebx
mov ebp, dword [esp + 0x2c]
add edx, ebp
mov dword [esp + 0x3c], edx
mov esi, ebp
mov ebp, dword [eax + 0x24]
mov edi, ebx
mov ebx, dword [eax + 0x20]
shr edx, 5
cmp edx, ebp
jae 0x62094a
mov ebp, dword [ebx + edx*4]
mov ecx, dword [esp + 0x3c]
mov eax, 1
shl eax, cl
test ebp, eax
je 0x620385
xor eax, eax
test al, al
je 0x62037f
mov eax, dword [esp + 0x6c]
mov edx, dword [eax + 0x1c]
mov ebx, dword [eax + 0x18]
mov ebp, dword [eax + 0x14]
mov ecx, eax
lea eax, [ebx + 1]
cmp eax, edx
jg 0x620320
lea eax, [ebx + 1]
mov dword [ecx + 0x18], eax
lea eax, [ebx + ebx*2]
mov dword [ebp + eax*4], edi
lea edx, [ebp + eax*4]
mov byte [edx + 4], 0
mov dword [ebp + eax*4 + 8], esi
mov eax, dword [esp + 0x54]
mov ebx, dword [ecx + 4]
mov ecx, ebx
movzx edx, byte [esp + 0x22]
jmp 0x6200c7
mov dword [esp + 0x38], edi
lea ecx, [0x79c800]
mov dword [esp], ecx
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], eax
call fcn.00438b10
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x6c]
mov dword [ebx + 0x1c], edx
mov edx, dword [0xadb480]
test edx, edx
jne 0x620374
mov dword [ebx + 0x14], eax
mov esi, dword [esp + 0x2c]
mov edi, dword [esp + 0x38]
mov ebx, ecx
mov ebp, eax
mov ecx, dword [esp + 0x6c]
jmp 0x6202f4
mov edi, dword [esp + 0x48]
call fcn.0044c870
jmp 0x620362
mov ecx, dword [esp + 0x6c]
jmp 0x62030d
or eax, ebp
mov dword [ebx + edx*4], eax
mov eax, 1
jmp 0x6202d6
mov ecx, eax
jmp 0x62030d
mov edx, dword [eax + 4]
cmp bl, 5
je 0x6204a0
lea ebx, [edx + 1]
imul ebx, esi
add ebx, edx
mov dword [esp + 0x3c], ebx
mov ebp, dword [eax + 0x24]
mov edi, edx
mov edx, dword [eax + 0x20]
shr ebx, 5
cmp ebx, ebp
jae 0x620943
mov ebp, dword [edx + ebx*4]
mov ecx, dword [esp + 0x3c]
mov eax, 1
shl eax, cl
test eax, ebp
je 0x620491
xor eax, eax
test al, al
je 0x62048b
mov eax, dword [esp + 0x6c]
mov edx, dword [eax + 0x14]
mov ebx, dword [eax + 0x18]
mov ebp, dword [eax + 0x1c]
mov ecx, eax
lea eax, [ebx + 1]
cmp eax, ebp
jg 0x620425
lea eax, [ebx + 1]
mov dword [ecx + 0x18], eax
lea eax, [ebx + ebx*2]
mov dword [edx + eax*4], esi
lea ebx, [edx + eax*4]
mov byte [ebx + 4], 0
mov dword [edx + eax*4 + 8], edi
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x2c]
movzx edx, byte [esp + 0x22]
jmp 0x6200c7
mov dword [esp + 0x38], esi
mov dword [esp + 0x3c], edi
lea ecx, [0x79c800]
mov dword [esp], ecx
mov dword [esp + 4], edx
mov dword [esp + 8], ebx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], eax
call fcn.00438b10
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x6c]
mov dword [ebx + 0x1c], edx
mov edx, dword [0xadb480]
test edx, edx
jne 0x620480
mov dword [ebx + 0x14], eax
mov esi, dword [esp + 0x38]
mov edi, dword [esp + 0x3c]
mov ebx, ecx
mov edx, eax
mov ecx, dword [esp + 0x6c]
jmp 0x6203fc
mov edi, dword [esp + 0x48]
call fcn.0044c870
jmp 0x62046b
mov ecx, dword [esp + 0x6c]
jmp 0x620413
or ebp, eax
mov dword [edx + ebx*4], ebp
mov eax, 1
jmp 0x6203de
mov ecx, eax
jmp 0x620413
cmp cl, 2
jne 0x6205e1
test bl, bl
jne 0x6205bd
mov ebp, dword [esp + 0x54]
test ebp, ebp
jb 0x6205b5
mov ecx, ebx
mov ebx, dword [esp + 0x6c]
mov esi, edx
mov edx, dword [ebx + 8]
mov edi, eax
mov eax, dword [ebx + 0xc]
cmp ebp, eax
jae 0x6205af
mov eax, dword [ebx]
mov edx, dword [edx + ebp*4]
mov ebp, dword [eax + 4]
mov eax, dword [eax]
cmp edi, ebp
jae 0x62092e
movzx eax, byte [esi + eax]
cmp al, 5
je 0x620525
mov eax, dword [ebx + 0x14]
mov ebp, dword [ebx + 0x18]
mov esi, edx
lea edx, [ebp + 1]
mov ebx, dword [ebx + 0x1c]
cmp edx, ebx
jg 0x62054e
lea edx, [ebp + 1]
mov ebx, dword [esp + 0x6c]
mov dword [ebx + 0x18], edx
lea edx, [ebp + ebp*2]
mov dword [eax + edx*4], edi
lea ebp, [eax + edx*4]
mov byte [ebp + 4], 1
mov dword [eax + edx*4 + 8], esi
mov eax, dword [ebx + 8]
mov edx, dword [ebx + 0xc]
mov ebp, dword [esp + 0x54]
cmp ebp, edx
jae 0x620927
mov edx, dword [esp + 0x2c]
mov dword [eax + ebp*4], edx
mov eax, dword [esp + 0x50]
mov ecx, edx
movzx edx, byte [esp + 0x22]
jmp 0x6200c7
mov dword [esp + 0x3c], esi
lea ecx, [0x79c800]
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], ebp
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edx
call fcn.00438b10
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x6c]
mov dword [ebx + 0x1c], edx
mov edx, dword [0xadb480]
test edx, edx
jne 0x6205a4
mov dword [ebx + 0x14], eax
mov esi, dword [esp + 0x3c]
mov edi, dword [esp + 0x30]
mov ebp, ecx
movzx ecx, byte [esp + 0x22]
jmp 0x620509
mov edi, dword [esp + 0x48]
call fcn.0044c870
jmp 0x620590
mov edx, dword [esp + 0x2c]
jmp 0x62053e
mov ecx, ebx
mov ebx, dword [esp + 0x6c]
jmp 0x6205af
mov eax, dword [esp + 0x6c]
mov ecx, dword [eax + 8]
mov edx, dword [eax + 0xc]
mov ebx, dword [esp + 0x54]
cmp ebx, edx
jae 0x620935
mov edx, dword [esp + 0x2c]
mov dword [ecx + ebx*4], edx
mov edi, eax
jmp 0x620111
cmp cl, 3
jne 0x620628
mov eax, dword [esp + 0x70]
mov ecx, dword [eax + 0x14]
mov edx, dword [esp + 0x2c]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x74]
mov dword [esp], ebx
call ecx
movzx eax, byte [esp + 8]
not eax
and eax, dword [esp + 0x54]
test al, al
jne 0x62061f
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x2c]
movzx edx, byte [esp + 0x22]
jmp 0x6200c7
mov edi, dword [esp + 0x6c]
jmp 0x620111
mov eax, dword [esp + 0x6c]
mov ecx, dword [eax + 8]
mov edx, dword [eax + 0xc]
test edx, edx
je 0x62070b
cmp edx, 1
jle 0x620702
mov edx, dword [esp + 0x2c]
mov dword [ecx + 4], edx
mov ecx, dword [esp + 0x68]
movzx ebx, byte [ecx + 0x50]
test bl, bl
je 0x6206fb
movzx ebx, byte [esp + 0x23]
test bl, bl
je 0x6206f7
test edx, edx
jle 0x6206f3
mov ebp, dword [ecx + 0x58]
mov esi, ebx
mov ebx, dword [ecx + 0x54]
cmp ebp, 1
jbe 0x620920
mov ebx, dword [ebx + 4]
cmp edx, ebx
jle 0x6206b0
mov ebx, dword [ecx + 0x58]
mov ebp, dword [ecx + 0x54]
mov edi, edx
mov edx, dword [eax + 0xc]
mov eax, dword [eax + 8]
cmp ebx, edx
jle 0x6206ef
cmp ebp, eax
je 0x6206b0
mov dword [esp], ebp
mov dword [esp + 4], eax
shl edx, 2
mov dword [esp + 8], edx
call fcn.0044d070
mov eax, dword [esp + 0x68]
mov byte [eax + 0x50], 1
movzx ecx, byte [esp + 0x23]
test cl, cl
je 0x6206e3
mov edx, dword [esp + 0x6c]
mov ebx, dword [edx + 4]
mov ebp, dword [esp + 0x2c]
cmp ebp, ebx
je 0x6206d7
mov edi, edx
jmp 0x620111
mov byte [esp + 0x80], 1
add esp, 0x64
ret
mov byte [esp + 0x80], 1
add esp, 0x64
ret
mov edx, ebx
jmp 0x620699
mov esi, ebx
jmp 0x6206b0
mov esi, ebx
jmp 0x6206b0
movzx esi, byte [esp + 0x23]
jmp 0x620687
mov edx, dword [esp + 0x2c]
jmp 0x62064a
mov eax, dword [esp + 0x68]
mov byte [eax + 0x50], 1
mov byte [esp + 0x80], 1
add esp, 0x64
ret
cmp cl, 7
ja 0x6207a1
cmp cl, 5
je 0x620980
cmp cl, 6
jne 0x620741
mov eax, dword [esp + 0x50]
mov ecx, dword [esp + 0x2c]
mov edx, ebx
jmp 0x6200c7
mov eax, dword [esp + 0x70]
mov ecx, dword [eax + 0x20]
mov edx, dword [esp + 0x2c]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x74]
mov dword [esp], ebx
call ecx
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x24], ecx
lea edx, [esp + 0x4c]
mov dword [esp], edx
mov dword [esp + 4], eax
call fcn.006197b0
movzx eax, byte [esp + 8]
test al, al
je 0x620798
mov ebx, dword [esp + 0x24]
mov ebp, dword [esp + 0x2c]
lea ecx, [ebp + ebx]
mov eax, dword [esp + 0x50]
movzx edx, byte [esp + 0x22]
jmp 0x6200c7
mov edi, dword [esp + 0x6c]
jmp 0x620111
cmp cl, 8
je 0x620842
cmp cl, 9
je 0x6207ff
cmp cl, 0xa
jne 0x620966
mov eax, dword [esp + 0x70]
mov ecx, dword [eax + 0x20]
mov edx, dword [esp + 0x2c]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x74]
mov dword [esp], ebx
call ecx
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
cmp eax, 0xa
je 0x6207f6
cmp eax, 0xffffffff
je 0x6207f6
mov ebx, dword [esp + 0x2c]
add ecx, ebx
mov eax, dword [esp + 0x50]
movzx edx, byte [esp + 0x22]
jmp 0x6200c7
mov edi, dword [esp + 0x6c]
jmp 0x620111
mov eax, dword [esp + 0x70]
mov ecx, dword [eax + 0x20]
mov edx, dword [esp + 0x2c]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x74]
mov dword [esp], ebx
call ecx
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
cmp ecx, 0xffffffff
je 0x620839
mov ebx, dword [esp + 0x2c]
lea ecx, [ebx + eax]
mov eax, dword [esp + 0x50]
movzx edx, byte [esp + 0x22]
jmp 0x6200c7
mov edi, dword [esp + 0x6c]
jmp 0x620111
mov eax, dword [esp + 0x70]
mov ecx, dword [eax + 0x20]
mov edx, dword [esp + 0x2c]
mov dword [esp + 4], edx
mov ebx, dword [esp + 0x74]
mov dword [esp], ebx
call ecx
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x58]
mov ebx, dword [esp + 0x5c]
test ebx, ebx
jbe 0x62093c
mov edx, dword [edx]
cmp eax, edx
jne 0x62088c
mov ebx, dword [esp + 0x2c]
add ecx, ebx
mov eax, dword [esp + 0x50]
movzx edx, byte [esp + 0x22]
jmp 0x6200c7
mov edi, dword [esp + 0x6c]
jmp 0x620111
movzx eax, byte [esi + 0x50]
mov byte [esp + 0x80], al
add esp, 0x64
ret
lea eax, [0x79c800]
mov dword [esp], eax
mov dword [esp + 4], ebx
mov dword [esp + 8], edx
mov dword [esp + 0xc], ecx
mov dword [esp + 0x10], ebp
call fcn.00438b10
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x6c]
mov dword [ebx + 0x1c], edx
mov edx, dword [0xadb480]
test edx, edx
jne 0x6208f7
mov dword [ebx + 0x14], eax
mov esi, dword [esp + 0x68]
mov edi, dword [esp + 0x7c]
mov edx, ecx
mov ebx, eax
mov eax, dword [esp + 0x6c]
jmp 0x620015
lea edi, [ebx + 0x14]
call fcn.0044c870
jmp 0x6208e2
mov eax, dword [esp + 0x6c]
jmp 0x620030
or ebx, ebp
mov dword [eax + edx*4], ebx
mov eax, 1
jmp 0x61fff5
mov eax, ebx
jmp 0x620030
call fcn.00426430
ud2
call fcn.00426430
ud2
call fcn.00426430
ud2
call fcn.00426430
ud2
call fcn.00426430
ud2
call fcn.00426430
ud2
call fcn.00426430
ud2
call fcn.00426430
ud2
call fcn.00426430
ud2
call fcn.00426430
ud2
lea eax, [0x7716e0]
mov dword [esp], eax
lea eax, [0x8428e8]
mov dword [esp + 4], eax
call fcn.00427310
ud2
lea eax, [0x7716e0]
mov dword [esp], eax
lea eax, [0x8428f0]
mov dword [esp + 4], eax
call fcn.00427310
ud2
call fcn.00426430
ud2
call fcn.00426430
ud2
call fcn.00426430
ud2
call fcn.00426430
ud2
call fcn.0044b110
jmp fcn.0061ff50