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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0x2c]
cmp eax, dword [ecx + 8]
jbe 0x5b5b59
sub esp, 0xac
mov dword [esp + 0xc8], 0
mov dword [esp + 0xcc], 0
mov eax, dword [esp + 0xb0]
mov ecx, dword [eax + 0x78]
mov edx, dword [eax + 0x7c]
test ecx, ecx
je 0x5b5b47
mov eax, dword [ecx + 0x1c]
mov dword [esp], edx
lea ecx, [0x646ce0]
mov dword [esp + 4], ecx
lea ecx, [0x7e32f0]
mov dword [esp + 8], ecx
call eax
mov eax, dword [esp + 0x10]
lea ecx, [0x6502a0]
cmp dword [esp + 0xc], ecx
jne 0x5b5b40
mov dword [esp + 0x78], eax
test eax, eax
je 0x5b4f6e
mov ecx, dword [eax + 0x3c]
test ecx, ecx
jne 0x5b5afd
mov eax, dword [esp + 0xb0]
mov ecx, dword [eax + 0x44]
mov edx, dword [eax + 0x48]
mov dword [esp], ecx
mov dword [esp + 4], edx
call fcn.005b5c20
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
test eax, eax
jne 0x5b4fbf
mov eax, dword [esp + 0xb0]
mov ecx, dword [eax + 8]
test ecx, ecx
je 0x5b5ad6
mov eax, dword [ecx + 0x14]
mov ecx, dword [ecx + 0x18]
mov dword [esp], eax
mov dword [esp + 4], ecx
call fcn.005b5c20
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.005b5e10
mov eax, dword [esp + 8]
mov dword [esp + 0x7c], eax
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x34], ecx
mov edx, dword [esp + 0xb0]
mov ebx, dword [edx + 8]
mov dword [esp], ebx
call fcn.00531a20
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
movzx edx, byte [esp + 0xbc]
test dl, dl
je 0x5b5aca
mov edx, dword [esp + 0xb0]
mov ebx, dword [edx + 8]
mov ebp, dword [ebx + 4]
mov esi, dword [ebx]
test ebp, ebp
je 0x5b5023
mov ebx, dword [ebx + 0xc]
test ebx, ebx
je 0x5b5a7f
mov ebx, dword [edx]
cmp dword [edx + 4], 7
jne 0x5b5a74
cmp dword [ebx], 0x4e4e4f43
jne 0x5b5a74
cmp word [ebx + 4], 0x4345
jne 0x5b5a74
cmp byte [ebx + 6], 0x54
jne 0x5b5a74
mov ebx, dword [edx + 8]
mov ebp, dword [ebx + 0x20]
test ebp, ebp
jne 0x5b5a74
mov eax, dword [ebx + 0xc]
mov ecx, dword [ebx + 8]
test eax, eax
je 0x5b5a67
mov dword [esp + 0x38], eax
mov dword [esp + 0x88], ecx
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.005b4ab0
movzx eax, byte [esp + 8]
test al, al
jne 0x5b5a25
lea eax, [0x64a780]
mov dword [esp], eax
mov eax, dword [esp + 0xb4]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0xb8]
mov dword [esp + 8], ecx
call fcn.0040a2a0
movzx eax, byte [esp + 0x14]
test al, al
je 0x5b5935
mov eax, dword [esp + 0xb4]
mov ecx, dword [esp + 0xb8]
xor edx, edx
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x2c], eax
mov dword [esp + 0x80], edx
mov ebx, dword [esp + 0xb0]
mov ebp, dword [ebx + 4]
mov esi, dword [ebx]
test ebp, ebp
je 0x5b5925
mov dword [esp + 0x9c], 0
mov dword [esp + 0xa0], 0
mov dword [esp + 0xa4], 0
mov dword [esp + 0xa8], 0
mov dword [esp], esi
mov dword [esp + 4], ebp
call fcn.00409f80
mov eax, dword [esp + 8]
lea ecx, [0x643700]
mov dword [esp + 0x9c], ecx
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x88]
mov dword [esp], eax
mov eax, dword [esp + 0x38]
mov dword [esp + 4], eax
call fcn.00409f80
mov eax, dword [esp + 8]
lea ecx, [0x643700]
mov dword [esp + 0xa4], ecx
mov dword [esp + 0xa8], eax
mov eax, dword [esp + 0x2c]
mov dword [esp], eax
mov edx, dword [esp + 0x6c]
mov dword [esp + 4], edx
lea ebx, [0x67d03b]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 0x10
lea ebx, [esp + 0x9c]
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], 2
mov dword [esp + 0x18], 2
call fcn.004ae730
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], ecx
mov eax, dword [esp + 0xc8]
test eax, eax
jne 0x5b5918
mov dword [esp + 0x94], 0
mov dword [esp + 0x98], 0
mov eax, dword [esp + 0x7c]
mov dword [esp], eax
mov ecx, dword [esp + 0x34]
mov dword [esp + 4], ecx
call fcn.00409f80
mov eax, dword [esp + 8]
lea ecx, [0x643700]
mov dword [esp + 0x94], ecx
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0x2c]
mov dword [esp], eax
mov edx, dword [esp + 0x6c]
mov dword [esp + 4], edx
lea ebx, [0x67b016]
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 0xa
lea ebx, [esp + 0x94]
mov dword [esp + 0x10], ebx
mov dword [esp + 0x14], 1
mov dword [esp + 0x18], 1
call fcn.004ae730
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], ecx
mov eax, dword [esp + 0xc8]
test eax, eax
jne 0x5b590b
mov eax, dword [esp + 0x78]
test eax, eax
je 0x5b5295
mov ecx, dword [eax + 0x30]
test ecx, ecx
jne 0x5b58a2
mov eax, dword [esp + 0xb0]
mov ecx, dword [eax + 0x1c]
lea edx, [0x66eee0]
mov dword [esp], edx
mov dword [esp + 4], ecx
lea ecx, [0x67b138]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 0xa
call fcn.00410f40
movzx eax, byte [esp + 0x14]
test al, al
jne 0x5b5871
mov eax, 0x12
lea ecx, [0x67df3a]
test eax, eax
jne 0x5b5738
lea eax, [0x6739c0]
mov dword [esp], eax
mov eax, dword [esp + 0xb0]
mov dword [esp + 4], eax
call fcn.005b9ff0
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov dword [esp + 0xc8], ecx
mov dword [esp + 0xcc], edx
test ecx, ecx
jne 0x5b572b
mov dword [esp + 0x74], eax
mov dword [esp], eax
mov ecx, dword [esp + 0x2c]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x6c]
mov dword [esp + 8], edx
mov ebx, dword [esp + 0x78]
mov dword [esp + 0xc], ebx
call fcn.005baf00
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], ecx
test eax, eax
jne 0x5b571e
mov eax, dword [esp + 0xb0]
mov ecx, dword [eax + 0x1c]
mov dword [esp], ecx
mov ecx, dword [esp + 0x2c]
mov dword [esp + 4], ecx
mov edx, dword [esp + 0x6c]
mov dword [esp + 8], edx
mov ebx, dword [0x7cc820]
mov dword [esp + 0xc], ebx
mov ebx, dword [esp + 0x78]
mov dword [esp + 0x10], ebx
call fcn.005b4290
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], ecx
test eax, eax
jne 0x5b5711
mov eax, dword [esp + 0xc0]
test eax, eax
jne 0x5b56be
mov eax, dword [esp + 0x2c]
mov dword [esp], eax
mov ecx, dword [esp + 0x6c]
mov dword [esp + 4], ecx
lea edx, [0x6799d5]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 2
call fcn.00494d30
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], ecx
test eax, eax
jne 0x5b56b1
mov eax, dword [esp + 0x78]
test eax, eax
je 0x5b5418
mov edx, dword [eax + 0x34]
test edx, edx
jne 0x5b56a4
mov edx, dword [esp + 0xc4]
test edx, edx
je 0x5b545e
lea ecx, [0x6cac70]
mov ebx, dword [esp + 0x2c]
cmp ecx, ebx
jne 0x5b569a
mov ebp, dword [esp + 0x6c]
je 0x5b564f
test eax, eax
je 0x5b544e
mov eax, dword [eax + 0x38]
test eax, eax
jne 0x5b563d
mov eax, dword [edx]
call eax
movzx eax, byte [esp]
test al, al
je 0x5b55fe
lea eax, [0x6cac70]
mov ecx, dword [esp + 0x2c]
cmp eax, ecx
jne 0x5b55f4
mov eax, dword [esp + 0x6c]
jne 0x5b55eb
mov edx, dword [esp + 0x74]
movzx ebx, byte [edx + 0x48]
test bl, bl
jne 0x5b55af
mov dword [esp], edx
mov dword [esp + 4], ecx
mov eax, dword [esp + 0x6c]
mov dword [esp + 8], eax
call fcn.005bb730
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], ecx
test eax, eax
je 0x5b5556
mov edx, dword [esp + 0x74]
mov ebx, dword [edx + 0x40]
mov edx, dword [edx + 0x44]
cmp ebx, eax
je 0x5b54d7
nop
call fcn.004312b0
add esp, 0xac
ret
mov dword [esp], ebx
mov dword [esp + 4], edx
mov dword [esp + 8], ecx
call fcn.00404120
movzx eax, byte [esp + 0xc]
test al, al
je 0x5b54ca
mov dword [esp + 0x8c], 0
mov dword [esp + 0x90], 0
mov eax, dword [esp + 0xc8]
mov ecx, dword [esp + 0xcc]
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], ecx
lea eax, [0x6cb7d0]
mov dword [esp], eax
lea eax, [esp + 0x8c]
mov dword [esp + 4], eax
call fcn.0040a0f0
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 8]
mov dword [esp + 0xc8], ecx
mov dword [esp + 0xcc], eax
jmp 0x5b54ca
mov eax, dword [esp + 0x80]
test eax, eax
je 0x5b558c
mov dword [esp], eax
call fcn.0057c320
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], ecx
nop
call fcn.004312b0
add esp, 0xac
ret
mov dword [esp + 0xc8], 0
mov dword [esp + 0xcc], 0
nop
call fcn.004312b0
add esp, 0xac
ret
mov dword [esp], eax
call fcn.0057c320
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
test eax, eax
jne 0x5b55d0
mov ecx, dword [esp + 0x2c]
mov edx, dword [esp + 0x74]
jmp 0x5b548a
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], ecx
nop
call fcn.004312b0
add esp, 0xac
ret
mov edx, dword [esp + 0x74]
jmp 0x5b548a
mov eax, 0
jmp 0x5b5474
nop
mov eax, dword [esp + 0xb0]
mov ecx, dword [eax + 0x20]
mov eax, dword [eax + 0x24]
test ecx, ecx
jne 0x5b5633
mov dword [esp + 0xc8], 0
mov dword [esp + 0xcc], 0
nop
call fcn.004312b0
add esp, 0xac
ret
mov ecx, dword [ecx + 0x10]
mov dword [esp], eax
call ecx
jmp 0x5b5610
mov ecx, dword [eax]
mov edx, eax
call ecx
mov edx, dword [esp + 0xc4]
jmp 0x5b544e
mov dword [esp], ebp
call fcn.0057c320
mov eax, dword [esp + 4]
mov ecx, dword [esp + 8]
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], ecx
test eax, eax
jne 0x5b568d
mov eax, dword [esp + 0x78]
test eax, eax
lea ecx, [0x6cac70]
mov edx, dword [esp + 0xc4]
mov ebx, dword [esp + 0x2c]
jmp 0x5b5441
nop
call fcn.004312b0
add esp, 0xac
ret
mov ebp, 0
jmp 0x5b5439
mov eax, dword [edx]
call eax
mov eax, dword [esp + 0x78]
jmp 0x5b5418
nop
call fcn.004312b0
add esp, 0xac
ret
mov dword [esp], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 4], eax
mov ecx, dword [esp + 0x6c]
mov dword [esp + 8], ecx
mov dword [esp + 0xc], 0
mov edx, dword [esp + 0x78]
mov dword [esp + 0x10], edx
call fcn.005b4290
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], ecx
test eax, eax
je 0x5b53c1
nop
call fcn.004312b0
add esp, 0xac
ret
nop
call fcn.004312b0
add esp, 0xac
ret
nop
call fcn.004312b0
add esp, 0xac
ret
nop
call fcn.004312b0
add esp, 0xac
ret
mov dword [esp + 0x30], eax
mov dword [esp + 0x70], ecx
mov dword [esp + 0x94], 0
mov dword [esp + 0x98], 0
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00409f80
mov eax, dword [esp + 8]
lea ecx, [0x643700]
mov dword [esp + 0x94], ecx
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0x2c]
mov dword [esp], eax
mov ecx, dword [esp + 0x6c]
mov dword [esp + 4], ecx
lea edx, [0x67d3db]
mov dword [esp + 8], edx
mov dword [esp + 0xc], 0x10
lea edx, [esp + 0x94]
mov dword [esp + 0x10], edx
mov dword [esp + 0x14], 1
mov dword [esp + 0x18], 1
call fcn.004ae730
mov eax, dword [esp + 0x20]
mov ecx, dword [esp + 0x24]
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], ecx
mov eax, dword [esp + 0xc8]
test eax, eax
jne 0x5b5864
mov eax, dword [esp + 0x78]
test eax, eax
je 0x5b52e3
mov ecx, dword [eax + 0x30]
test ecx, ecx
je 0x5b52e3
lea eax, [0x63e880]
mov dword [esp], eax
call fcn.0040c800
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x30]
mov dword [edi + 4], eax
mov eax, dword [0x7e34e0]
test eax, eax
jne 0x5b5859
mov eax, dword [esp + 0x70]
mov dword [edi], eax
mov eax, dword [esp + 0x78]
mov edx, dword [eax + 0x30]
lea ecx, [0x67b138]
mov dword [esp], ecx
mov dword [esp + 4], 0xa
mov dword [esp + 8], edi
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
mov ecx, dword [edx]
call ecx
mov eax, dword [esp + 0x78]
jmp 0x5b52e3
mov eax, dword [esp + 0x70]
call fcn.0045c920
jmp 0x5b5820
nop
call fcn.004312b0
add esp, 0xac
ret
mov eax, dword [esp + 0xb0]
mov ecx, dword [eax + 0x1c]
mov dword [esp], ecx
lea ecx, [0x67b138]
mov dword [esp + 4], ecx
mov dword [esp + 8], 0xa
call fcn.0057cf60
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x10]
jmp 0x5b52db
lea eax, [0x63e880]
mov dword [esp], eax
call fcn.0040c800
mov edi, dword [esp + 4]
mov eax, dword [esp + 0x34]
mov dword [edi + 4], eax
mov eax, dword [0x7e34e0]
test eax, eax
jne 0x5b5900
mov eax, dword [esp + 0x7c]
mov dword [edi], eax
mov eax, dword [esp + 0x78]
mov edx, dword [eax + 0x30]
lea ecx, [0x679c90]
mov dword [esp], ecx
mov dword [esp + 4], 4
mov dword [esp + 8], edi
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
mov ecx, dword [edx]
call ecx
jmp 0x5b5295
mov eax, dword [esp + 0x7c]
call fcn.0045c920
jmp 0x5b58cb
nop
call fcn.004312b0
add esp, 0xac
ret
nop
call fcn.004312b0
add esp, 0xac
ret
mov ebp, 3
lea esi, [0x679acf]
jmp 0x5b50f5
lea eax, [0x6cac70]
mov ecx, dword [esp + 0xb4]
cmp eax, ecx
jne 0x5b5a1b
mov edx, dword [esp + 0xb8]
jne 0x5b5969
cmp dword [edx + 0xc], 0x1000
jl 0x5b5969
lea eax, [0x6cac70]
mov ecx, edx
jmp 0x5b50d2
lea eax, [0x643900]
mov dword [esp], eax
mov dword [esp + 4], 0x1000
mov dword [esp + 8], 0x1000
call fcn.00444130
mov eax, dword [esp + 0xc]
mov dword [esp + 0x84], eax
lea ecx, [0x65cb40]
mov dword [esp], ecx
call fcn.0040c800
mov eax, dword [esp + 4]
mov dword [eax + 0xc], 0x1000
mov dword [eax + 0x10], 0x1000
mov ecx, dword [0x7e34e0]
test ecx, ecx
jne 0x5b5a06
mov ecx, dword [esp + 0x84]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0xb4]
mov dword [eax + 0x18], ecx
mov ecx, dword [0x7e34e0]
test ecx, ecx
jne 0x5b59f1
mov ecx, dword [esp + 0xb8]
mov dword [eax + 0x1c], ecx
mov edx, eax
lea eax, [0x6cac70]
jmp 0x5b595c
lea edi, [eax + 0x1c]
mov ecx, eax
mov eax, dword [esp + 0xb8]
call fcn.0045c920
mov eax, ecx
jmp 0x5b59e4
lea edi, [eax + 8]
mov ecx, eax
mov eax, dword [esp + 0x84]
call fcn.0045c920
mov eax, ecx
jmp 0x5b59c6
mov edx, 0
jmp 0x5b5951
lea eax, [0x64d2c0]
mov dword [esp], eax
call fcn.0040c800
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x36
lea ecx, [0x68a740]
mov dword [eax], ecx
lea ecx, [0x6cadb0]
mov dword [esp + 0xc8], ecx
mov dword [esp + 0xcc], eax
nop
call fcn.004312b0
add esp, 0xac
ret
mov eax, dword [esp + 0x34]
mov ecx, dword [esp + 0x7c]
jmp 0x5b506d
mov ebx, eax
mov eax, ecx
mov ecx, ebx
jmp 0x5b506d
mov dword [esp], 0
mov dword [esp + 4], esi
mov dword [esp + 8], ebp
lea edx, [0x679a8a]
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], 3
mov edx, dword [esp + 0x7c]
mov dword [esp + 0x14], edx
mov ebx, dword [esp + 0x34]
mov dword [esp + 0x18], ebx
mov dword [esp + 0x1c], eax
mov dword [esp + 0x20], ecx
call fcn.00447660
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
jmp 0x5b506d
mov edx, dword [esp + 0xb0]
jmp 0x5b5023
mov eax, dword [0x7ccf00]
mov ecx, dword [0x7ccf04]
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], ecx
nop
call fcn.004312b0
add esp, 0xac
ret
mov dword [esp + 0x3c], 8
lea ecx, [0x692760]
mov dword [esp + 0x4c], ecx
mov dword [esp + 0x64], eax
lea ecx, [esp + 0xc8]
mov dword [esp + 0x68], ecx
lea ecx, [esp + 0x3c]
mov dword [esp], ecx
call fcn.00430b70
test eax, eax
jne 0x5b5b33
jmp 0x5b4f6e
nop
call fcn.004312b0
add esp, 0xac
ret
xor eax, eax
jmp 0x5b4f5b
nop
mov edx, dword [0x7cc06c]
lea ecx, [0x6cd440]
jmp 0x5b4f2b
call fcn.0045b380
jmp fcn.005b4ee0