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

Disassembly:
mov ecx, dword [0x9ec7ac]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
lea eax, [esp - 0x24c]
cmp eax, dword [ecx + 8]
jbe 0x61bcb1
sub esp, 0x2cc
mov ebx, dword [esp + 0x2e0]
lea ecx, [ebx + 2]
mov dword [esp + 0x28], ecx
cmp ecx, 3
jge 0x61b2b5
mov dword [esp], 1
lea eax, [0x73e4c7]
mov dword [esp + 4], eax
mov dword [esp + 8], 0x1b
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x14], 0
call fcn.006163d0
mov ecx, dword [esp + 0x28]
mov ebx, dword [esp + 0x2e0]
mov ebp, dword [esp + 0x2d8]
inc ebp
mov esi, dword [esp + 0x2dc]
cmp esi, ebp
jb 0x61b2d1
mov eax, dword [esp + 0x2d4]
jmp 0x61b30d
mov eax, dword [esp + 0x2d4]
mov dword [esp], eax
mov dword [esp + 4], ebp
mov dword [esp + 8], esi
mov dword [esp + 0xc], 1
lea eax, [0x6e4640]
mov dword [esp + 0x10], eax
call fcn.0044e230
mov eax, dword [esp + 0x14]
mov ebp, dword [esp + 0x18]
mov ecx, dword [esp + 0x28]
mov ebx, dword [esp + 0x2e0]
inc ebx
mov word [eax + ebp*2 - 2], bx
mov dword [esp + 0x98], 0
mov dword [esp + 0x9c], 0
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], 0
mov dword [esp + 0x98], 0xc8
mov dword [esp + 0x9c], 0x258
mov dword [esp + 0xa0], 0x4b0
mov dword [esp + 0xa4], 0x960
xor edx, edx
jmp 0x61b370
inc edx
cmp edx, 4
jge 0x61b385
lea ebx, [esp + edx*4 + 0x98]
cmp dword [ebx], ebp
jle 0x61b36f
lea ebx, [edx + 2]
jmp 0x61b38a
mov ebx, 6
mov dword [esp + 0x2c8], eax
mov dword [esp + 0x64], ebp
mov dword [esp + 0x2c], ebx
lea esi, [ebp + 0x31]
mov edx, esi
sar esi, 0x1f
mov edi, eax
mov eax, 0x51eb851f
imul edx
sar edx, 4
sub edx, esi
mov dword [esp + 0x30], edx
mov esi, dword [esp + 0x2d0]
cmp dword [esi + 0x4c0], edx
jge 0x61b431
lea eax, [0x6e4500]
mov dword [esp], eax
mov dword [esp + 4], edx
mov dword [esp + 8], edx
call fcn.0044e0b0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x2d0]
mov dword [edx + 0x4bc], ecx
mov dword [edx + 0x4c0], ecx
mov ebx, dword [0x9eca70]
test ebx, ebx
je 0x61b40d
call fcn.00468460
mov dword [edi], eax
mov ebx, dword [edx + 0x4b8]
mov dword [edi + 4], ebx
mov dword [edx + 0x4b8], eax
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x2c]
mov ebp, dword [esp + 0x64]
mov esi, dword [esp + 0x2d0]
mov edi, dword [esp + 0x2c8]
mov eax, dword [esi + 0x4c0]
cmp eax, edx
jb 0x61bca7
mov eax, dword [esi + 0x4b8]
mov dword [esp + 0x2ac], eax
mov dword [esp + 0x90], eax
xor eax, eax
mov dword [esp + 0x44], eax
mov eax, dword [esp + 0x90]
jmp 0x61b484
mov eax, ebp
cdq
idiv ebx
mov eax, dword [esp + 0x2ac]
mov byte [eax + ebp], dl
lea edx, [ebp + 1]
mov ebp, dword [esp + 0x30]
mov ebp, dword [esp + 0x64]
mov dword [esp + 0x44], edx
mov edx, dword [esp + 0x30]
mov ebp, dword [esp + 0x44]
cmp ebp, edx
jge 0x61b495
test ebx, ebx
jne 0x61b462
jmp 0x61bca2
cmp ebx, 6
ja 0x61bc96
xor ebp, ebp
jmp 0x61b4b9
mov dword [esi + ebx*4 + 0x6590], eax
inc ebp
mov ebx, dword [esp + 0x2c]
mov eax, dword [esp + 0x2ac]
mov edx, dword [esp + 0x30]
cmp ebx, ebp
jle 0x61b526
imul eax, ebp, 0x1020
lea eax, [eax + esi + 0x4d0]
cmp ecx, 0x102
ja 0x61bc8c
mov dword [esp + 0x68], eax
xor eax, eax
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x68]
jmp 0x61bc7f
lea ebx, [ebp + ebp*2]
mov dword [esi + ebx*4 + 0x6594], ecx
mov dword [esi + ebx*4 + 0x6598], 0x102
mov edx, dword [0x9eca70]
test edx, edx
je 0x61b4a2
call fcn.00468460
mov dword [edi], eax
mov edx, dword [esi + ebx*4 + 0x6590]
mov dword [edi + 4], edx
mov edi, dword [esp + 0x2c8]
jmp 0x61b4a2
mov ebp, dword [esp + 0x64]
mov dword [esp + 0x88], eax
xor eax, eax
mov dword [esp + 0x60], eax
xor eax, eax
mov dword [esp + 0x4c], eax
xor eax, eax
mov dword [esp + 0x24], eax
xor eax, eax
mov dword [esp + 0x48], eax
xor eax, eax
mov dword [esp + 0x2b8], eax
mov eax, dword [esp + 0x88]
jmp 0x61b59b
shl edi, 4
lea edi, [eax + edi + 4]
inc dword [edi]
inc ebx
mov edi, dword [esp + 0x4c]
dec edi
mov dword [esp + 0x60], ebx
mov dword [esp + 0x4c], edi
mov dword [esp + 0x24], ebp
mov dword [esp + 0x48], ecx
mov dword [esp + 0x2b8], eax
mov eax, dword [esp + 0x2ac]
mov ecx, dword [esp + 0x28]
mov ebx, dword [esp + 0x2c]
mov ebp, dword [esp + 0x64]
mov edi, dword [esp + 0x2c8]
mov ebx, dword [esp + 0x60]
cmp ebx, ebp
jge 0x61b618
movzx edi, word [edi + ebx*2]
mov ebp, dword [esp + 0x4c]
test ebp, ebp
jne 0x61b5fc
mov ebp, dword [esp + 0x24]
cmp ebp, edx
jae 0x61bc47
movzx eax, byte [ebp + eax]
cmp eax, 6
jae 0x61bc3d
imul eax, eax, 0x1020
lea eax, [eax + esi + 0x4d0]
cmp ecx, 0x102
ja 0x61bc33
inc ebp
mov dword [esp + 0x80], eax
mov eax, 0x32
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x80]
jmp 0x61b60b
mov ecx, dword [esp + 0x48]
mov ebp, dword [esp + 0x24]
mov eax, dword [esp + 0x2b8]
cmp ecx, edi
ja 0x61b55b
jmp 0x61bc2c
mov ebx, dword [esp + 0x2c]
mov dword [esp + 0x78], eax
xor eax, eax
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x78]
jmp 0x61b6b1
mov eax, dword [esp + 0x40]
inc eax
mov dword [esp + 0x60], eax
mov ecx, dword [esp + 0x2c4]
mov dword [esp], ecx
mov ecx, dword [esp + 0x28]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x102
call fcn.00409e70
mov eax, dword [esp + 0xc]
lea ecx, [0x7ac368]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0048c530
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x2d0]
mov edx, dword [esp + 0x2c]
mov ebx, dword [esp + 0x60]
mov eax, dword [esp + 0x2ac]
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x2c]
mov ebp, dword [esp + 0x64]
mov esi, dword [esp + 0x2d0]
mov edi, dword [esp + 0x2c8]
mov ebp, dword [esp + 0x60]
mov dword [esp + 0x40], ebp
mov ebp, dword [esp + 0x64]
mov ebp, dword [esp + 0x40]
cmp ebp, ebx
jge 0x61b740
imul edi, ebp, 0x1020
lea edi, [edi + esi + 0x4d0]
cmp ecx, 0x102
ja 0x61bc22
mov dword [esp + 0x2c4], edi
nop
mov dword [esp], edi
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x102
call fcn.00409e70
mov eax, dword [esp + 0xc]
lea ecx, [0x7ac34c]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0048c530
mov eax, dword [esp + 0x2c4]
mov dword [esp], eax
mov ecx, dword [esp + 0x28]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0x102
mov dword [esp + 0xc], 0x14
call fcn.00610280
mov eax, dword [esp + 0x10]
test eax, eax
je 0x61b62f
jmp 0x61bbbb
lea edi, [esp + 0x1a8]
xor eax, eax
call fcn.004686bf
lea ecx, [esi + 0x10]
mov dword [esp + 0x2c0], ecx
mov dword [esp], ecx
mov edx, ebx
sar ebx, 0x1f
mov dword [esp + 8], ebx
mov dword [esp + 4], edx
mov dword [esp + 0xc], 3
call fcn.00617630
mov ecx, dword [esp + 0x2c0]
mov dword [esp], ecx
mov edx, dword [esp + 0x30]
mov ebx, edx
sar edx, 0x1f
mov dword [esp + 8], edx
mov dword [esp + 4], ebx
mov dword [esp + 0xc], 0xf
call fcn.00617630
mov ecx, dword [esp + 0x2d0]
mov edx, dword [ecx + 0x4cc]
mov ebx, dword [ecx + 0x4c4]
mov ebp, dword [esp + 0x30]
cmp edx, ebp
jb 0x61b7bc
mov eax, ebp
jmp 0x61b7ee
mov dword [esp], ebx
mov dword [esp + 4], ebp
mov dword [esp + 8], edx
mov dword [esp + 0xc], ebp
lea eax, [0x6e4500]
mov dword [esp + 0x10], eax
call fcn.0044e230
mov ebx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
mov ebp, edx
mov edx, eax
mov eax, dword [esp + 0x30]
mov dword [esp + 0x60], edx
mov dword [esp + 0x5c], ebp
mov dword [esp + 0x2bc], ebx
mov dword [esp], ebx
mov ecx, dword [esp + 0x2ac]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.00468df0
mov eax, dword [esp + 0x5c]
mov ecx, dword [esp + 0x2d0]
mov dword [ecx + 0x4c8], eax
mov edx, dword [esp + 0x60]
mov dword [ecx + 0x4cc], edx
mov edx, dword [0x9eca70]
test edx, edx
jne 0x61b842
mov ebx, dword [esp + 0x2bc]
jmp 0x61b859
call fcn.00468460
mov ebx, dword [esp + 0x2bc]
mov dword [edi], ebx
mov ebp, dword [ecx + 0x4c4]
mov dword [edi + 4], ebp
mov dword [ecx + 0x4c4], ebx
mov ebp, dword [esp + 0x2a8]
add ebp, 0xffffff00
xchg ebp, ebx
neg ebx
xchg ebp, ebx
nop
cmp ebp, 0x100
ja 0x61bbaf
jl 0x61b886
mov ebp, 0x100
lea eax, [esp + 0x1a8]
mov dword [esp], eax
lea ecx, [0x9ed800]
mov dword [esp + 4], ecx
mov dword [esp + 8], ebp
call fcn.00468df0
mov eax, dword [esp + 0x2bc]
mov ecx, dword [esp + 0x5c]
xor edx, edx
xor ebx, ebx
jmp 0x61b8f4
lea eax, [esp + 0x1a9]
mov dword [esp], eax
lea eax, [esp + 0x1a8]
mov dword [esp + 4], eax
mov dword [esp + 8], ecx
call fcn.00468df0
movzx eax, byte [esp + 0x23]
mov byte [esp + 0x1a8], al
mov eax, dword [esp + 0x3c]
lea edx, [eax + 1]
mov eax, dword [esp + 0x2bc]
mov ecx, dword [esp + 0x5c]
mov ebx, dword [esp + 0x34]
cmp edx, ecx
jge 0x61b950
movzx ebp, byte [eax + edx]
lea edi, [esp + 0xa8]
lea esi, [esp + 0x1a8]
call fcn.00468990
xor ecx, ecx
jmp 0x61bb87
xor ecx, ecx
mov byte [eax + edx], cl
movzx ecx, cl
or ebx, ecx
cmp ecx, 0x100
ja 0x61bba5
mov dword [esp + 0x3c], edx
xchg ebp, eax
mov byte [esp + 0x23], al
xchg ebp, eax
mov dword [esp + 0x34], ebx
cmp ecx, 0xff
jl 0x61b8b4
mov ecx, 0xff
jmp 0x61b8b4
lea eax, [ebx - 0xff]
neg eax
mov dword [esp + 0x2a8], eax
mov eax, dword [esp + 0x2d0]
mov ecx, dword [eax + 0x4c4]
mov dword [esp + 0x2bc], ecx
mov edx, dword [eax + 0x4c8]
mov dword [esp + 0x60], edx
xor ebx, ebx
jmp 0x61b9bb
mov dword [esp + 0x5c], ebx
movzx edx, byte [ecx + ebx]
lea ebp, [eax + 0x10]
mov dword [esp], ebp
mov dword [esp + 4], edx
lea edx, [0x9c53a0]
mov dword [esp + 8], edx
call fcn.00613150
mov eax, dword [esp + 0x5c]
lea ebx, [eax + 1]
mov eax, dword [esp + 0x2d0]
mov ecx, dword [esp + 0x2bc]
mov edx, dword [esp + 0x60]
cmp ebx, edx
jl 0x61b981
mov ecx, dword [esp + 0x2c0]
mov dword [esp], ecx
lea ecx, [eax + 0x6590]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x2c]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 6
lea edx, [eax + 0x65d8]
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], ecx
mov dword [esp + 0x18], 6
call fcn.006177e0
mov eax, dword [esp + 0x2d0]
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x64]
mov ebx, dword [esp + 0x2c8]
mov ebp, dword [esp + 0x2ac]
xor esi, esi
xor edi, edi
xor esi, esi
mov dword [esp + 0x24], esi
xor esi, esi
mov dword [esp + 0x2b0], esi
xor esi, esi
jmp 0x61ba56
mov ecx, dword [esp + 0x60]
lea esi, [ecx + 1]
mov ecx, dword [esp + 0x4c]
lea edi, [ecx - 1]
mov ecx, dword [esp + 0x30]
mov edx, dword [esp + 0x64]
mov ebx, dword [esp + 0x2c8]
mov ebp, dword [esp + 0x2ac]
cmp esi, edx
jge 0x61bb65
movzx ebx, word [ebx + esi*2]
test edi, edi
jne 0x61ba9e
mov edi, dword [esp + 0x24]
cmp edi, ecx
jae 0x61bb7f
movzx ebp, byte [edi + ebp]
cmp ebp, 6
jae 0x61bb73
lea ebp, [ebp + ebp*4]
lea ebp, [eax + ebp*4 + 0x65d8]
inc edi
mov dword [esp + 0x70], eax
mov eax, 0x32
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x70]
jmp 0x61baad
mov ebp, dword [esp + 0x2b0]
mov dword [esp + 0x4c], edi
mov edi, dword [esp + 0x24]
mov ecx, dword [ebp + 4]
mov edx, dword [ebp + 0xc]
and edx, ebx
cmp ecx, edx
jbe 0x61bb6c
mov dword [esp + 0x60], esi
mov dword [esp + 0x58], ebx
mov dword [esp + 0x2b0], ebp
mov dword [esp + 0x24], edi
mov ecx, dword [ebp]
mov edx, dword [ecx + edx*4]
mov ecx, edx
and edx, 0x1f
mov ebx, dword [eax + 0x28]
lea ebp, [ebx - 0x40]
xchg ebp, ebx
neg ebx
xchg ebp, ebx
cmp ebp, edx
jb 0x61bb3b
mov dword [esp + 0x54], edx
shr ecx, 5
mov dword [esp + 0x50], ecx
mov ebp, ecx
mov ecx, ebx
shl ebp, cl
lea edi, [ecx - 0x20]
mov ecx, edi
mov esi, dword [esp + 0x50]
shl esi, cl
neg ecx
mov edx, dword [esp + 0x50]
shr edx, cl
cmp ebx, 0x20
sbb ebx, ebx
and ebp, ebx
cmp ecx, 0x20
sbb ebx, ebx
and edx, ebx
cmp edi, 0x20
sbb ebx, ebx
and esi, ebx
or edx, esi
or edx, dword [eax + 0x24]
or dword [eax + 0x20], ebp
mov dword [eax + 0x24], edx
mov edx, dword [esp + 0x54]
add dword [eax + 0x28], edx
jmp 0x61ba32
lea ecx, [eax + 0x10]
mov dword [esp], ecx
mov ecx, dword [esp + 0x58]
mov dword [esp + 4], ecx
mov ecx, dword [esp + 0x2b0]
mov dword [esp + 8], ecx
call fcn.00613150
mov eax, dword [esp + 0x2d0]
jmp 0x61ba32
add esp, 0x2cc
ret
mov eax, edx
call fcn.004684d0
mov eax, ebp
mov ecx, 6
call fcn.004684c0
mov eax, edi
call fcn.004684c0
inc ecx
cmp ecx, 0x100
jge 0x61b916
lea esi, [esp + ecx + 0xa8]
xchg ebp, eax
cmp byte [esi], al
xchg ebp, eax
jne 0x61bb86
jmp 0x61b918
mov edx, 0x100
call fcn.004684e0
mov ecx, ebp
mov edx, 0x100
call fcn.004684e0
mov eax, dword [esp + 0x10]
mov dword [esp + 0x2bc], eax
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x2b4], ecx
lea edx, [0x6f0660]
mov dword [esp], edx
call fcn.0040c5b0
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x2bc]
mov dword [eax], ecx
mov ecx, dword [0x9eca70]
test ecx, ecx
jne 0x61bc12
mov ecx, dword [esp + 0x2b4]
mov dword [eax + 4], ecx
lea ecx, [0x6f3660]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004386b0
call fcn.00468450
mov ecx, dword [esp + 0x2b4]
mov dword [edi], ecx
jmp 0x61bbf6
mov edx, 0x102
call fcn.004684e0
mov eax, edi
call fcn.004684c0
mov edx, 0x102
call fcn.004684e0
mov ecx, 6
call fcn.004684c0
mov eax, ebp
mov ecx, edx
call fcn.004684c0
shl ebx, 4
mov edx, dword [esp + 0x38]
mov dword [eax + ebx], edx
mov dword [eax + ebx + 4], 0
mov dword [eax + ebx + 8], 0
mov dword [eax + ebx + 0xc], 0
inc edx
mov ebx, dword [esp + 0x2c]
mov dword [esp + 0x38], edx
mov edx, dword [esp + 0x30]
mov ebx, dword [esp + 0x38]
cmp ebx, ecx
jl 0x61bc50
jmp 0x61b4e9
mov edx, 0x102
call fcn.004684e0
mov ecx, ebx
mov edx, 6
call fcn.004684e0
call fcn.00437570
mov ecx, edx
mov edx, eax
call fcn.00468500
nop
call fcn.00467050
jmp fcn.0061b240