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

Disassembly:
mov ecx, dword [0x1819d24]
mov ecx, dword fs:[ecx]
mov ecx, dword [ecx]
cmp esp, dword [ecx + 8]
jbe 0x5fb411
sub esp, 0x70
mov eax, 0
mov dword [esp + 0x6c], eax
mov byte [esp + 0x23], 0
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], 0
mov dword [esp + 0x8c], 0
mov dword [esp + 0x90], 0
mov dword [esp + 0x94], 0
mov dword [esp + 0x98], 0
mov ebx, dword [esp + 0x74]
mov ebp, dword [ebx + 4]
mov esi, dword [esp + 0x78]
mov edi, dword [esi + 4]
test ebp, 1
jne 0x5fb3ef
test edi, 1
jne 0x5fb3ef
mov dword [esp + 0x3c], ebp
mov dword [esp + 0x38], edi
mov dword [esp + 0x28], 0
mov dword [esp + 0x24], 0
mov eax, ebx
lea ebx, [0x1819ae0]
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], 0
mov dword [esp + 0x54], 0
mov dword [esp + 0x40], ebx
mov dword [esp + 0x44], 0
mov dword [esp + 0x48], 0
mov byte [esp + 0x22], 1
mov dword [esp + 0x5c], 0
mov dword [esp + 0x60], 0
mov dword [esp + 0x64], 0
mov dword [esp + 0x68], 0
lea ebx, [0x5fb420]
mov dword [esp + 0x5c], ebx
lea ebx, [esp + 0x22]
mov dword [esp + 0x60], ebx
lea ebx, [esp + 0x4c]
mov dword [esp + 0x64], ebx
lea ebx, [esp + 0x40]
mov dword [esp + 0x68], ebx
lea ebx, [esp + 0x5c]
mov dword [esp + 0x6c], ebx
mov byte [esp + 0x23], 1
mov dword [esp + 0x2c], 0xffffffff
jmp 0x5fad77
mov esi, dword [esp + 0x78]
mov ebx, dword [esp + 0x28]
cmp ebx, ebp
jl 0x5fad89
cmp dword [esp + 0x24], edi
jge 0x5fb308
mov ecx, dword [esp + 0x24]
cmp ecx, edi
jl 0x5faece
mov ecx, dword [esp + 0x2c]
test ecx, ecx
jle 0x5fadcf
mov edx, dword [eax + 4]
cmp edx, ebx
jbe 0x5fb3e6
mov edx, dword [eax]
mov esi, dword [esp + 0x50]
mov edx, dword [edx + ebx*4]
cmp esi, ecx
jbe 0x5fb3dd
mov esi, dword [esp + 0x4c]
lea esi, [esi + ecx*4]
cmp dword [esi], edx
jl 0x5fadcb
xor ecx, ecx
jmp 0x5faec5
mov esi, dword [esp + 0x78]
mov ecx, dword [eax + 4]
cmp ecx, ebx
jbe 0x5fb3d6
mov edx, dword [eax]
lea eax, [ebx + 1]
mov esi, dword [edx + ebx*4]
cmp ecx, eax
jbe 0x5fb3d1
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x50]
add ecx, 2
mov edi, dword [esp + 0x4c]
mov ebx, dword [edx + ebx*4 + 4]
cmp eax, ecx
jae 0x5fae4b
mov dword [esp + 0x34], esi
mov dword [esp + 0x30], ebx
mov dword [esp], edi
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
mov dword [esp + 0xc], 2
lea eax, [0xb3bd00]
mov dword [esp + 0x10], eax
call fcn.00452a40
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x54], eax
mov dword [esp + 0x4c], edi
mov ebx, dword [esp + 0x30]
mov ebp, dword [esp + 0x3c]
mov esi, dword [esp + 0x34]
mov dword [esp + 0x50], ecx
mov dword [edi + ecx*4 - 8], esi
mov dword [edi + ecx*4 - 4], ebx
add dword [esp + 0x28], 2
add dword [esp + 0x2c], 2
mov ebx, dword [esp + 0x48]
mov esi, dword [esp + 0x44]
inc esi
mov edi, dword [esp + 0x40]
cmp ebx, esi
jae 0x5faeac
mov dword [esp], edi
mov dword [esp + 4], esi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0xb3bd40]
mov dword [esp + 0x10], eax
call fcn.00452a40
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov esi, dword [esp + 0x18]
mov dword [esp + 0x48], eax
mov dword [esp + 0x40], edi
mov ebp, dword [esp + 0x3c]
mov dword [esp + 0x44], esi
mov ebx, dword [esp + 0x7c]
mov dword [edi + esi*4 - 4], ebx
mov eax, dword [esp + 0x74]
mov edi, dword [esp + 0x38]
mov ecx, 1
mov byte [esp + 0x22], cl
jmp 0x5fb29c
cmp ebx, ebp
jl 0x5fb018
mov ebx, dword [esp + 0x2c]
test ebx, ebx
jle 0x5faf10
mov edx, dword [esi + 4]
cmp edx, ecx
jbe 0x5fb3c8
mov edx, dword [esi]
mov eax, dword [esp + 0x50]
mov edx, dword [edx + ecx*4]
cmp eax, ebx
jbe 0x5fb3bf
mov eax, dword [esp + 0x4c]
lea ebx, [eax + ebx*4]
cmp dword [ebx], edx
jl 0x5faf0c
xor eax, eax
jmp 0x5fb00b
mov eax, dword [esp + 0x74]
mov ebx, dword [esi + 4]
cmp ecx, ebx
jae 0x5fb3b6
mov edx, dword [esi]
lea eax, [ecx + 1]
mov esi, dword [edx + ecx*4]
cmp ebx, eax
jbe 0x5fb3af
mov ebx, dword [esp + 0x54]
mov eax, dword [esp + 0x50]
add eax, 2
mov edi, dword [esp + 0x4c]
mov ecx, dword [edx + ecx*4 + 4]
cmp ebx, eax
jae 0x5faf8e
mov dword [esp + 0x34], esi
mov dword [esp + 0x30], ecx
mov dword [esp], edi
mov dword [esp + 4], eax
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 2
lea eax, [0xb3bd00]
mov dword [esp + 0x10], eax
call fcn.00452a40
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x54], eax
mov dword [esp + 0x4c], edi
mov ebp, dword [esp + 0x3c]
mov esi, dword [esp + 0x34]
mov eax, ecx
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x50], eax
mov dword [edi + eax*4 - 8], esi
mov dword [edi + eax*4 - 4], ecx
add dword [esp + 0x24], 2
add dword [esp + 0x2c], 2
mov ebx, dword [esp + 0x48]
mov esi, dword [esp + 0x44]
inc esi
mov edi, dword [esp + 0x40]
cmp ebx, esi
jae 0x5fafef
mov dword [esp], edi
mov dword [esp + 4], esi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0xb3bd40]
mov dword [esp + 0x10], eax
call fcn.00452a40
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov esi, dword [esp + 0x18]
mov dword [esp + 0x48], eax
mov dword [esp + 0x40], edi
mov ebp, dword [esp + 0x3c]
mov dword [esp + 0x44], esi
mov ebx, dword [esp + 0x80]
mov dword [edi + esi*4 - 4], ebx
mov esi, dword [esp + 0x78]
mov edi, dword [esp + 0x38]
mov eax, 1
mov byte [esp + 0x22], al
mov eax, dword [esp + 0x74]
jmp 0x5fb29c
mov edx, dword [esi + 4]
cmp edx, ecx
jbe 0x5fb3a6
mov esi, dword [esi]
mov edi, dword [eax + 4]
mov ebp, dword [esi + ecx*4]
cmp edi, ebx
jbe 0x5fb39d
mov dword [esp + 0x58], esi
mov eax, dword [eax]
lea esi, [eax + ebx*4]
cmp dword [esi], ebp
jle 0x5fb175
mov eax, dword [esp + 0x2c]
test eax, eax
jle 0x5fb079
cmp ecx, edx
jae 0x5fb394
mov ebx, dword [esp + 0x50]
cmp eax, ebx
jae 0x5fb38d
mov ebx, dword [esp + 0x4c]
lea ebx, [ebx + eax*4]
cmp dword [ebx], ebp
jl 0x5fb079
mov ebx, dword [esp + 0x80]
xor eax, eax
jmp 0x5fb160
cmp ecx, edx
jae 0x5fb384
lea eax, [ecx + 1]
cmp edx, eax
jbe 0x5fb37d
mov ebx, dword [esp + 0x54]
mov esi, dword [esp + 0x50]
add esi, 2
mov edi, dword [esp + 0x4c]
mov eax, ebp
mov ebp, dword [esp + 0x58]
mov ebp, dword [ebp + ecx*4 + 4]
cmp ebx, esi
jae 0x5fb0ef
mov dword [esp + 0x34], eax
mov dword [esp + 0x30], ebp
mov dword [esp], edi
mov dword [esp + 4], esi
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 2
lea eax, [0xb3bd00]
mov dword [esp + 0x10], eax
call fcn.00452a40
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov esi, dword [esp + 0x18]
mov dword [esp + 0x54], eax
mov dword [esp + 0x4c], edi
mov eax, dword [esp + 0x34]
mov ebp, dword [esp + 0x30]
mov dword [esp + 0x50], esi
mov dword [edi + esi*4 - 8], eax
mov dword [edi + esi*4 - 4], ebp
add dword [esp + 0x24], 2
add dword [esp + 0x2c], 2
mov ebx, dword [esp + 0x48]
mov ebp, dword [esp + 0x44]
inc ebp
mov esi, dword [esp + 0x40]
cmp ebx, ebp
jae 0x5fb14c
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0xb3bd40]
mov dword [esp + 0x10], eax
call fcn.00452a40
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ebp, dword [esp + 0x18]
mov dword [esp + 0x48], eax
mov dword [esp + 0x40], esi
mov dword [esp + 0x44], ebp
mov ebx, dword [esp + 0x80]
mov dword [esi + ebp*4 - 4], ebx
mov eax, 1
mov byte [esp + 0x22], al
mov eax, dword [esp + 0x74]
mov ebp, dword [esp + 0x3c]
mov edi, dword [esp + 0x38]
jmp 0x5fb29c
mov ebp, dword [esp + 0x2c]
test ebp, ebp
jle 0x5fb1ab
cmp ebx, edi
jae 0x5fb374
mov ecx, dword [esp + 0x50]
mov esi, dword [eax + ebx*4]
cmp ebp, ecx
jae 0x5fb36d
mov ecx, dword [esp + 0x4c]
lea ebp, [ecx + ebp*4]
cmp dword [ebp], esi
jl 0x5fb1ab
mov ebx, dword [esp + 0x7c]
xor eax, eax
jmp 0x5fb28c
cmp ebx, edi
jae 0x5fb364
lea ebp, [ebx + 1]
mov esi, dword [eax + ebx*4]
cmp edi, ebp
jbe 0x5fb35b
mov ebp, dword [esp + 0x54]
mov edi, dword [esp + 0x50]
add edi, 2
mov ecx, dword [esp + 0x4c]
mov ebx, dword [eax + ebx*4 + 4]
cmp ebp, edi
jae 0x5fb21e
mov dword [esp + 0x34], esi
mov dword [esp + 0x30], ebx
mov dword [esp], ecx
mov dword [esp + 4], edi
mov dword [esp + 8], ebp
mov dword [esp + 0xc], 2
lea eax, [0xb3bd00]
mov dword [esp + 0x10], eax
call fcn.00452a40
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov edi, dword [esp + 0x18]
mov dword [esp + 0x54], eax
mov dword [esp + 0x4c], ecx
mov ebx, dword [esp + 0x30]
mov esi, dword [esp + 0x34]
mov dword [esp + 0x50], edi
mov dword [ecx + edi*4 - 8], esi
mov dword [ecx + edi*4 - 4], ebx
add dword [esp + 0x28], 2
add dword [esp + 0x2c], 2
mov ebx, dword [esp + 0x48]
mov ebp, dword [esp + 0x44]
inc ebp
mov esi, dword [esp + 0x40]
cmp ebx, ebp
jae 0x5fb27b
mov dword [esp], esi
mov dword [esp + 4], ebp
mov dword [esp + 8], ebx
mov dword [esp + 0xc], 1
lea eax, [0xb3bd40]
mov dword [esp + 0x10], eax
call fcn.00452a40
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov ebp, dword [esp + 0x18]
mov dword [esp + 0x48], eax
mov dword [esp + 0x40], esi
mov dword [esp + 0x44], ebp
mov ebx, dword [esp + 0x7c]
mov dword [esi + ebp*4 - 4], ebx
mov eax, 1
mov byte [esp + 0x22], al
mov eax, dword [esp + 0x74]
mov ebp, dword [esp + 0x3c]
mov edi, dword [esp + 0x38]
movzx ebx, byte [esp + 0x22]
test bl, bl
jne 0x5fad73
mov eax, dword [0x17b1fe0]
mov ecx, dword [0x17b1ff0]
mov ebx, dword [0x17b1fe4]
mov ebp, dword [0x17b1ff4]
mov esi, dword [0x17b1ff8]
mov edi, dword [0x17b1fe8]
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], ebx
mov dword [esp + 0x8c], edi
mov dword [esp + 0x90], ecx
mov dword [esp + 0x94], ebp
mov dword [esp + 0x98], esi
mov byte [esp + 0x23], 0
mov edx, dword [esp + 0x6c]
mov eax, dword [edx]
call eax
add esp, 0x70
ret
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x40]
mov ebx, dword [esp + 0x50]
mov ebp, dword [esp + 0x44]
mov esi, dword [esp + 0x48]
mov edi, dword [esp + 0x54]
mov dword [esp + 0x84], eax
mov dword [esp + 0x88], ebx
mov dword [esp + 0x8c], edi
mov dword [esp + 0x90], ecx
mov dword [esp + 0x94], ebp
mov dword [esp + 0x98], esi
mov byte [esp + 0x23], 0
mov edx, dword [esp + 0x6c]
mov eax, dword [edx]
call eax
add esp, 0x70
ret
mov eax, ebp
mov ecx, edi
call fcn.0046eb40
mov eax, ebx
mov ecx, edi
call fcn.0046eb40
mov eax, ebp
call fcn.0046eb40
mov eax, ebx
mov ecx, edi
call fcn.0046eb40
mov ecx, edx
call fcn.0046eb40
mov eax, ecx
mov ecx, edx
call fcn.0046eb40
mov ecx, ebx
call fcn.0046eb40
mov eax, ecx
mov ecx, edx
call fcn.0046eb40
mov eax, ebx
mov ecx, edi
call fcn.0046eb40
mov eax, ecx
mov ecx, edx
call fcn.0046eb40
mov ecx, ebx
call fcn.0046eb40
mov eax, ecx
mov ecx, ebx
call fcn.0046eb40
mov ecx, eax
mov eax, ebx
call fcn.0046eb40
mov eax, ecx
mov ecx, edx
call fcn.0046eb40
call fcn.0046eb40
mov eax, ebx
call fcn.0046eb40
mov eax, ecx
mov ecx, esi
call fcn.0046eb40
mov eax, ebx
mov ecx, edx
call fcn.0046eb40
lea eax, [0xb3bbc0]
mov dword [esp], eax
lea eax, [0x12b3740]
mov dword [esp + 4], eax
call fcn.0043b7f0
nop
call fcn.0043b510
add esp, 0x70
ret
call fcn.0046d6c0
jmp fcn.005fac40