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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x38]
cmp eax, dword [ecx + 8]
jbe 0x61b5ff
sub esp, 0xb8
mov ecx, dword [esp + 0xd4]
test ecx, ecx
jne 0x61ad71
mov edx, dword [esp + 0xc0]
test edx, edx
je 0x61ad78
mov eax, edx
mov ecx, dword [esp + 0xbc]
jmp 0x61ad88
mov edx, dword [esp + 0xc0]
mov eax, edx
mov ecx, dword [esp + 0xd0]
mov edx, dword [esp + 0xd4]
mov dword [esp + 0xa4], ecx
mov dword [esp + 0x54], edx
mov ebx, dword [esp + 0xd8]
test ebx, ebx
je 0x61adb1
mov ebp, dword [esp + 0xc4]
mov esi, dword [esp + 0xc8]
jmp 0x61afa3
mov ebp, dword [esp + 0xc4]
mov esi, dword [esp + 0xc8]
xor edi, edi
jmp 0x61add6
inc edi
mov ecx, dword [esp + 0xa4]
mov edx, dword [esp + 0x54]
mov ebx, dword [esp + 0xd8]
cmp esi, edi
jle 0x61afa3
lea ecx, [ebp + edi*8]
mov edx, dword [ecx]
mov dword [esp + 0x30], edx
mov ecx, dword [ecx + 4]
mov dword [esp + 0x94], ecx
test edx, edx
je 0x61af2a
je 0x61ae08
mov ebx, dword [edx + 4]
mov edx, ebx
mov ebx, dword [esp + 0xd8]
test edx, edx
je 0x61ae9a
nop
movzx ebx, byte [0x8f80d8]
test bl, bl
je 0x61ae4c
mov dword [0x8f80dc], edx
mov ebx, dword [0x91eb10]
test ebx, ebx
jne 0x61ae34
mov dword [0x8f80e0], ecx
jmp 0x61ae4c
mov ebx, edi
lea edi, [0x8f80e0]
mov eax, ecx
call fcn.00462ed0
mov eax, dword [esp + 0xc0]
mov edi, ebx
mov dword [esp + 0xb0], edx
mov dword [esp + 0xb4], ecx
mov edx, dword [esp + 0xb0]
test edx, edx
je 0x61ae7e
nop
movzx edx, byte [edx + 0xf]
mov ebx, edx
and edx, 0x1f
test bl, 0x20
jne 0x61ae7a
or edx, 0x80
mov ebx, ecx
jmp 0x61ae84
mov ebx, ecx
xor edx, edx
xor ecx, ecx
mov ebx, dword [esp + 0xd8]
mov dword [esp + 0x28], edx
mov edx, ecx
mov ecx, dword [esp + 0x94]
jmp 0x61aea4
xor edx, edx
xor edx, edx
mov dword [esp + 0x28], edx
xor edx, edx
nop
mov ebx, dword [esp + 0x28]
and ebx, 0x1f
mov dword [esp + 0x50], ebx
cmp ebx, 0x14
ja 0x61aed8
lea ecx, [ebx - 0x12]
cmp ecx, 1
ja 0x61aec6
mov ecx, dword [esp + 0x94]
jmp 0x61aef7
cmp ebx, 0x14
jne 0x61b5c4
mov ecx, dword [esp + 0x94]
jmp 0x61aee2
cmp ebx, 0x16
jbe 0x61aef7
cmp ebx, 0x17
jne 0x61aeee
mov edx, dword [edx]
test edx, edx
setne dl
xor edx, 1
jmp 0x61af19
cmp ebx, 0x1a
jne 0x61b5c4
mov ebx, dword [esp + 0x28]
test ebx, 0x200
je 0x61af07
xor edx, edx
jmp 0x61af19
test ebx, 0x80
je 0x61af11
mov edx, dword [edx]
test edx, edx
setne dl
xor edx, 1
mov ebx, dword [esp + 0xd8]
mov byte [esp + 0x23], dl
mov edx, dword [esp + 0x30]
jmp 0x61af41
mov dword [esp + 0x88], eax
mov eax, 1
mov byte [esp + 0x23], al
mov eax, dword [esp + 0x88]
movzx ebx, byte [esp + 0x23]
test bl, bl
jne 0x61adc3
mov eax, dword [edx + 0x14]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
test eax, eax
jne 0x61af67
mov eax, dword [esp + 0xd8]
jmp 0x61af81
mov eax, dword [esp + 0x30]
mov eax, dword [eax + 0x14]
mov ecx, dword [esp + 0x94]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
mov eax, dword [eax + 8]
mov ecx, dword [esp + 0xa4]
mov edx, dword [esp + 0x54]
mov ebp, dword [esp + 0xc4]
mov esi, dword [esp + 0xc8]
mov ebx, eax
mov eax, dword [esp + 0xc0]
mov dword [esp + 0xa0], ebx
mov edi, ecx
mov ecx, dword [esp + 0xe0]
test ecx, ecx
jne 0x61afef
test esi, esi
je 0x61afef
mov dword [esp + 0x68], eax
xor eax, eax
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0xe4]
mov dword [esp + 0x48], eax
mov dword [esp + 0x60], ecx
mov ecx, dword [esp + 0xdc]
mov dword [esp + 0x9c], ecx
mov eax, dword [esp + 0x68]
mov ecx, dword [esp + 0x60]
jmp 0x61b30c
mov dword [esp + 0x80], eax
mov eax, dword [esp + 0xdc]
mov dword [esp + 0x9c], eax
mov dword [esp + 0x78], ecx
mov ecx, dword [esp + 0xe4]
mov dword [esp + 0x4c], ecx
mov eax, dword [esp + 0x80]
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x48], ecx
mov dword [esp + 0x70], eax
xor eax, eax
mov dword [esp + 0x44], eax
xor eax, eax
mov dword [esp + 0x34], eax
xor eax, eax
mov dword [esp + 0x38], eax
lea eax, [0x91e8c0]
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0x70]
jmp 0x61b099
lea edi, [esi + ecx*8]
mov dword [edi], eax
lea eax, [esi + ecx*8 + 4]
mov dword [eax], ebx
mov eax, dword [esp + 0x44]
inc eax
mov ecx, dword [esp + 0x48]
mov ebx, dword [esp + 0xa0]
mov edi, dword [esp + 0xa4]
mov dword [esp + 0x44], eax
mov dword [esp + 0x34], edx
mov dword [esp + 0x38], ebp
mov dword [esp + 0x98], esi
mov eax, dword [esp + 0xc0]
mov edx, dword [esp + 0x54]
mov ebp, dword [esp + 0xc4]
mov esi, dword [esp + 0xc8]
mov ebp, dword [esp + 0x44]
cmp ebp, ecx
jge 0x61b12f
mov eax, dword [esp + 0x9c]
mov ecx, dword [eax + ebp*4]
mov dword [esp], ebx
mov dword [esp + 4], ecx
call fcn.0061ab40
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0x34]
lea edx, [ecx + 1]
mov ebx, dword [esp + 0xc]
mov ebp, dword [esp + 0x38]
cmp ebp, edx
jb 0x61b0de
mov esi, dword [esp + 0x98]
jmp 0x61b04b
mov dword [esp + 0x40], eax
mov dword [esp + 0x3c], ebx
lea eax, [0x69d5e0]
mov dword [esp], eax
mov ebx, dword [esp + 0x98]
mov dword [esp + 4], ebx
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebp
mov dword [esp + 0x10], edx
call fcn.0044b5e0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
inc ecx
mov ebx, dword [esp + 0x3c]
mov esi, eax
mov ebp, edx
mov eax, dword [esp + 0x40]
mov edx, ecx
mov ecx, dword [esp + 0x34]
jmp 0x61b04b
lea eax, [0x6b81c0]
mov dword [esp], eax
call fcn.0040b7c0
mov edi, dword [esp + 4]
mov eax, dword [esp + 0xc0]
mov dword [edi + 4], eax
mov eax, dword [0x91eb10]
test eax, eax
jne 0x61b160
mov ecx, dword [esp + 0xbc]
mov dword [edi], ecx
jmp 0x61b16c
mov eax, dword [esp + 0xbc]
call fcn.00462ed0
mov ecx, dword [esp + 0x54]
mov dword [edi + 0xc], ecx
mov ecx, dword [0x91eb10]
test ecx, ecx
jne 0x61b189
mov ecx, dword [esp + 0xa4]
mov dword [edi + 8], ecx
jmp 0x61b19e
lea ecx, [edi + 8]
mov eax, dword [esp + 0xa4]
mov edx, edi
mov edi, ecx
call fcn.00462ed0
mov edi, edx
mov ecx, dword [esp + 0xc8]
mov dword [edi + 0x14], ecx
mov ecx, dword [esp + 0xcc]
mov dword [edi + 0x18], ecx
mov ecx, dword [0x91eb10]
test ecx, ecx
jne 0x61b1d2
mov ecx, dword [esp + 0xc4]
mov dword [edi + 0x10], ecx
mov ecx, dword [esp + 0xa0]
mov dword [edi + 0x1c], ecx
jmp 0x61b1f6
lea ecx, [edi + 0x10]
mov eax, dword [esp + 0xc4]
mov edx, edi
mov edi, ecx
call fcn.00462ed0
lea edi, [edx + 0x1c]
mov eax, dword [esp + 0xa0]
call fcn.00462ed0
mov edi, edx
mov ecx, dword [esp + 0x48]
mov dword [edi + 0x24], ecx
mov ecx, dword [esp + 0x4c]
mov dword [edi + 0x28], ecx
mov ecx, dword [0x91eb10]
test ecx, ecx
jne 0x61b21a
mov ecx, dword [esp + 0x9c]
mov dword [edi + 0x20], ecx
jmp 0x61b22f
lea ecx, [edi + 0x20]
mov eax, dword [esp + 0x9c]
mov edx, edi
mov edi, ecx
call fcn.00462ed0
mov edi, edx
mov ecx, dword [esp + 0x34]
mov dword [edi + 0x30], ecx
mov ecx, dword [esp + 0x38]
mov dword [edi + 0x34], ecx
mov ecx, dword [0x91eb10]
test ecx, ecx
jne 0x61b253
mov ecx, dword [esp + 0x98]
mov dword [edi + 0x2c], ecx
jmp 0x61b268
lea ecx, [edi + 0x2c]
mov eax, dword [esp + 0x98]
mov edx, edi
mov edi, ecx
call fcn.00462ed0
mov edi, edx
mov ecx, dword [esp + 0xf4]
mov dword [edi + 0x38], ecx
mov ecx, dword [0x91eb10]
test ecx, ecx
jne 0x61b288
mov ecx, dword [esp + 0xf8]
mov dword [edi + 0x3c], ecx
jmp 0x61b29d
lea ecx, [edi + 0x3c]
mov eax, dword [esp + 0xf8]
mov edx, edi
mov edi, ecx
call fcn.00462ed0
mov edi, edx
mov ecx, dword [esp + 0xec]
mov dword [edi + 0x44], ecx
mov ecx, dword [esp + 0xf0]
mov dword [edi + 0x48], ecx
mov ecx, dword [0x91eb10]
test ecx, ecx
jne 0x61b2c7
mov eax, dword [esp + 0xe8]
mov dword [edi + 0x40], eax
jmp 0x61b2dc
lea ecx, [edi + 0x40]
mov eax, dword [esp + 0xe8]
mov edx, edi
mov edi, ecx
call fcn.00462ed0
mov edi, edx
mov dword [esp + 0xfc], edi
add esp, 0xb8
ret
inc edx
mov dword [esp + 0x4c], edx
mov dword [esp + 0x48], ebx
mov dword [esp + 0x9c], ebp
mov edx, dword [esp + 0x54]
mov ebx, dword [esp + 0xa0]
mov ebp, dword [esp + 0xc4]
mov edx, dword [esp + 0x4c]
cmp esi, edx
jle 0x61b575
lea ebx, [ebp + edx*8]
mov ebp, dword [ebx]
mov dword [esp + 0x2c], ebp
mov ebx, dword [ebx + 4]
mov dword [esp + 0x90], ebx
test ebp, ebp
je 0x61b46a
je 0x61b342
mov esi, dword [ebp + 4]
mov ebp, esi
mov esi, dword [esp + 0xc8]
test ebp, ebp
je 0x61b3d8
nop
movzx esi, byte [0x8f80d8]
xchg esi, eax
test al, al
xchg esi, eax
je 0x61b388
mov dword [0x8f80dc], ebp
mov esi, dword [0x91eb10]
test esi, esi
jne 0x61b370
mov dword [0x8f80e0], ebx
jmp 0x61b388
mov esi, edi
lea edi, [0x8f80e0]
mov eax, ebx
call fcn.00462ed0
mov eax, dword [esp + 0xc0]
mov edi, esi
mov dword [esp + 0xa8], ebp
mov dword [esp + 0xac], ebx
mov ebp, dword [esp + 0xa8]
test ebp, ebp
je 0x61b3bc
nop
movzx ebp, byte [ebp + 0xf]
mov esi, ebp
and ebp, 0x1f
xchg esi, eax
test al, 0x20
xchg esi, eax
jne 0x61b3b8
or ebp, 0x80
mov esi, ebx
jmp 0x61b3c2
mov esi, ebx
xor ebp, ebp
xor ebx, ebx
mov esi, dword [esp + 0xc8]
mov dword [esp + 0x24], ebp
mov ebp, ebx
mov ebx, dword [esp + 0x90]
jmp 0x61b3e2
xor ebp, ebp
xor ebp, ebp
mov dword [esp + 0x24], ebp
xor ebp, ebp
nop
mov ebx, dword [esp + 0x24]
and ebx, 0x1f
mov dword [esp + 0x50], ebx
cmp ebx, 0x14
ja 0x61b416
lea esi, [ebx - 0x12]
cmp esi, 1
ja 0x61b404
mov esi, dword [esp + 0xc8]
jmp 0x61b436
cmp ebx, 0x14
jne 0x61b58a
mov esi, dword [esp + 0xc8]
jmp 0x61b420
cmp ebx, 0x16
jbe 0x61b436
cmp ebx, 0x17
jne 0x61b42d
mov ebx, dword [ebp]
test ebx, ebx
setne bl
xor ebx, 1
jmp 0x61b459
cmp ebx, 0x1a
jne 0x61b58a
mov ebx, dword [esp + 0x24]
test ebx, 0x200
je 0x61b446
xor ebx, ebx
jmp 0x61b459
test ebx, 0x80
je 0x61b451
mov ebp, dword [ebp]
test ebp, ebp
setne bl
xor ebx, 1
mov ebp, dword [esp + 0x2c]
mov byte [esp + 0x23], bl
mov ebx, dword [esp + 0x90]
jmp 0x61b47b
mov dword [esp + 0x58], eax
mov eax, 1
mov byte [esp + 0x23], al
mov eax, dword [esp + 0x58]
movzx ebx, byte [esp + 0x23]
test bl, bl
je 0x61b494
mov ebx, dword [esp + 0x48]
mov ebp, dword [esp + 0x9c]
jmp 0x61b2ea
mov dword [esp + 0x44], ecx
mov eax, dword [ebp + 0x14]
mov ecx, dword [esp + 0x90]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
test eax, eax
jne 0x61b4dc
mov eax, dword [esp + 0xc0]
mov edx, dword [esp + 0x4c]
mov esi, dword [esp + 0xc8]
mov edi, dword [esp + 0xa4]
mov ebx, dword [esp + 0x48]
mov ecx, dword [esp + 0x44]
mov ebp, dword [esp + 0x9c]
jmp 0x61b2ea
mov eax, dword [esp + 0x2c]
mov eax, dword [eax + 0x14]
mov ecx, dword [esp + 0x90]
mov dword [esp], ecx
call eax
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x44]
lea edx, [ecx + 1]
mov eax, dword [eax]
mov ebx, dword [esp + 0x48]
cmp ebx, edx
jb 0x61b50d
mov ebp, dword [esp + 0x9c]
jmp 0x61b551
mov dword [esp + 0x48], eax
lea eax, [0x68cf40]
mov dword [esp], eax
mov ebp, dword [esp + 0x9c]
mov dword [esp + 4], ebp
mov dword [esp + 8], ecx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x10], edx
call fcn.0044b5e0
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
inc ecx
mov ebp, eax
mov ebx, edx
mov eax, dword [esp + 0x48]
mov edx, ecx
mov ecx, dword [esp + 0x44]
mov dword [ebp + ecx*4], eax
mov eax, dword [esp + 0xc0]
mov esi, dword [esp + 0xc8]
mov edi, dword [esp + 0xa4]
mov ecx, edx
mov edx, dword [esp + 0x4c]
jmp 0x61b2ea
mov edx, dword [esp + 0x54]
mov edx, dword [esp + 0x48]
mov dword [esp + 0x4c], edx
mov edx, dword [esp + 0x54]
jmp 0x61b01e
lea eax, [0x69f1a0]
mov dword [esp], eax
call fcn.0040b7c0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x13
lea ecx, [0x6ce8c1]
mov dword [eax], ecx
mov ecx, dword [esp + 0x50]
mov dword [eax + 8], ecx
lea ecx, [0x6955e0]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00436cf0
lea eax, [0x69f1a0]
mov dword [esp], eax
call fcn.0040b7c0
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x13
lea ecx, [0x6ce8c1]
mov dword [eax], ecx
mov ecx, dword [esp + 0x50]
mov dword [eax + 8], ecx
lea ecx, [0x6955e0]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00436cf0
nop
call fcn.00461ac0
jmp fcn.0061ad30