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

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffffac
push ebx
push esi
push edi
xor ecx, ecx
mov dword [ebp - 0x4c], ecx
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x40], ecx
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x48], ecx
mov dword [ebp - 0x38], ecx
mov dword [ebp - 0x34], ecx
mov dword [ebp - 4], edx
mov ebx, eax
xor eax, eax
push ebp
push 0x5ad12e
push dword fs:[eax]
mov dword fs:[eax], esp
mov byte [ebp - 5], 0
xor eax, eax
mov dword [ebp - 0x14], eax
mov dl, 1
mov eax, dword [0x44d9f4]
call fcn.0044e4fc
mov dword [ebx + 0x1310], eax
mov dl, 1
mov eax, dword [0x44de7c]
call fcn.0044eaa8
mov dword [ebx + 0x1314], eax
mov dl, 1
mov eax, dword [0x44d9f4]
call fcn.0044e4fc
mov dword [ebx + 0x1318], eax
mov dl, 1
mov eax, dword [0x44de7c]
call fcn.0044eaa8
mov dword [ebx + 0x131c], eax
lea edx, [ebp - 0x34]
mov eax, dword [ebx + 0x10141c]
call fcn.00411bd8
mov eax, dword [ebp - 0x34]
mov edx, dword [0x6320f8]
mov edx, dword [edx]
call fcn.004078f0
je 0x5aca6d
lea eax, [ebp - 0x38]
mov edx, dword [ebx + 0x10141c]
mov ecx, 0
call fcn.004073bc
mov eax, dword [ebp - 0x38]
call fcn.00406ac4
push eax
mov eax, dword [0x631db4]
mov eax, dword [eax]
call eax
pop ecx
mov dword [ebp - 0x14], eax
mov eax, dword [ebx + 0x10143c]
mov edx, dword [eax]
call dword [edx + 0x14]
mov edi, eax
dec edi
test edi, edi
jl 0x5acae1
inc edi
xor esi, esi
lea ecx, [ebp - 0x40]
mov edx, esi
mov eax, dword [ebx + 0x10143c]
call fcn.0043aa60
mov edx, dword [ebp - 0x40]
lea eax, [ebp - 0x3c]
mov ecx, 0
call fcn.004073bc
mov eax, dword [ebp - 0x3c]
call fcn.00406ac4
push eax
lea ecx, [ebp - 0x48]
mov edx, esi
mov eax, dword [ebx + 0x10143c]
call fcn.00439a74
mov edx, dword [ebp - 0x48]
lea eax, [ebp - 0x44]
mov ecx, 0
call fcn.004073bc
mov eax, dword [ebp - 0x44]
call fcn.00406ac4
mov edx, eax
mov eax, ebx
pop ecx
call fcn.005abf24
inc esi
dec edi
jne 0x5aca82
mov eax, dword [0x6317c0]
mov eax, dword [eax]
call eax
mov esi, eax
mov dword [ebx + 0x101378], esi
mov eax, 0x5ac7f4
mov dword [esi + 0x498], eax
mov dword [esi + 0x49c], ebx
lea eax, [ebx + 0x101334]
push eax
mov eax, dword [ebp - 0x14]
push eax
lea eax, [ebp - 0x4c]
mov edx, dword [ebp - 4]
mov ecx, 0xfde9
call fcn.004065c8
mov eax, dword [ebp - 0x4c]
push eax
lea eax, [ebx + 0x101378]
push eax
mov eax, dword [0x631ffc]
mov eax, dword [eax]
call eax
add esp, 0x10
test eax, eax
jne 0x5ad0eb
push 2
push 0
push 0x5ad140
mov eax, dword [ebx + 0x101334]
push eax
mov eax, dword [0x6318e0]
mov eax, dword [eax]
call eax
add esp, 0x10
mov esi, eax
test esi, esi
je 0x5acb84
mov eax, dword [esi]
mov dword [ebp - 0x54], eax
mov byte [ebp - 0x50], 6
lea eax, [ebp - 0x54]
push eax
push 0
mov ecx, 0x5ad150
mov dl, 1
mov eax, dword [0x40dc60]
call fcn.00417b34
call fcn.00405aac
mov eax, dword [ebx + 0x101378]
push eax
mov eax, dword [0x631aa0]
mov eax, dword [eax]
call eax
pop ecx
push 6
lea ecx, [ebx + 0x1013b4]
mov edx, dword [ebx + 0x101338]
mov eax, dword [ebx + 0x101378]
call fcn.005a2dd4
mov esi, eax
mov edi, dword [ebx + 0x101378]
mov eax, dword [edi + 0x18]
mov dword [ebp - 0x10], eax
test byte [edi + 0x14], 1
je 0x5acc1e
push 0
push 0xa
mov eax, dword [edi + 0x448]
mov edx, dword [edi + 0x44c]
call fcn.004085c0
mov dword [edi + 0x448], eax
mov dword [edi + 0x44c], edx
push 0
push 0xa
mov edi, dword [ebx + 0x101378]
mov eax, dword [edi + 0x450]
mov edx, dword [edi + 0x454]
call fcn.004085c0
mov dword [edi + 0x450], eax
mov dword [edi + 0x454], edx
mov eax, dword [ebx + 0x101378]
mov eax, dword [eax + 0x10]
test eax, eax
je 0x5acc1e
mov dword [eax + 0x3c], 0x300000
push esi
mov eax, dword [ebx + 0x101378]
push eax
mov eax, dword [0x632018]
mov eax, dword [eax]
call eax
add esp, 8
test eax, eax
jl 0x5ad0eb
mov dword [ebp - 0xc], esi
mov edi, dword [ebp - 0x10]
dec edi
test edi, edi
jl 0x5acc57
inc edi
push esi
mov eax, dword [0x6312a0]
mov eax, dword [eax]
call eax
pop ecx
add esi, 4
dec edi
jne 0x5acc46
lea eax, [ebp - 0xc]
push eax
mov eax, dword [0x6313e0]
mov eax, dword [eax]
call eax
pop ecx
mov eax, dword [ebx + 0x101378]
mov eax, dword [eax + 0x10]
test eax, eax
je 0x5acc77
xor edx, edx
mov dword [eax + 0x34], edx
mov eax, dword [ebx + 0x101378]
mov eax, dword [eax + 4]
test byte [eax + 9], 2
je 0x5acc9a
xor eax, eax
mov dword [ebx + 0x101588], eax
mov dword [ebx + 0x10158c], 0x40240000
jmp 0x5accac
xor eax, eax
mov dword [ebx + 0x101588], eax
mov dword [ebx + 0x10158c], 0x40ac2000
mov eax, dword [ebx + 0x101378]
call fcn.005a5800
mov byte [ebx + 0xf30], al
mov dl, 1
mov eax, dword [0x44de7c]
call fcn.0044eaa8
mov dword [ebx + 0xf34], eax
mov eax, ebx
call fcn.005ac93c
mov eax, ebx
call fcn.005ab720
test al, al
jne 0x5acd01
push 0
push 0
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0
mov eax, dword [ebx + 0x101378]
push eax
mov eax, dword [0x631e34]
mov eax, dword [eax]
call eax
add esp, 0x18
mov dword [ebp - 0x1c], eax
mov eax, ebx
call fcn.005ab718
test al, al
jne 0x5acd2e
push 0
push 0
mov eax, dword [ebp - 0x18]
push eax
push 0xffffffffffffffff
push 1
mov eax, dword [ebx + 0x101378]
push eax
mov eax, dword [0x631e34]
mov eax, dword [eax]
call eax
add esp, 0x18
mov dword [ebp - 0x18], eax
mov eax, ebx
call fcn.005ab728
test al, al
jne 0x5acd96
mov eax, ebx
call fcn.005ab720
test al, al
jne 0x5acd96
cmp dword [ebp - 0x18], 0
jl 0x5acd71
push 0
push 0
mov eax, dword [ebp - 0x18]
push eax
push 0xffffffffffffffff
push 3
mov eax, dword [ebx + 0x101378]
push eax
mov eax, dword [0x631e34]
mov eax, dword [eax]
call eax
add esp, 0x18
mov dword [ebx + 0x101408], eax
jmp 0x5acd96
push 0
push 0
mov eax, dword [ebp - 0x1c]
push eax
push 0xffffffffffffffff
push 3
mov eax, dword [ebx + 0x101378]
push eax
mov eax, dword [0x631e34]
mov eax, dword [eax]
call eax
add esp, 0x18
mov dword [ebx + 0x101408], eax
mov eax, dword [ebx + 0x101378]
mov edi, dword [eax + 0x18]
dec edi
test edi, edi
jl 0x5acf01
inc edi
xor esi, esi
mov eax, dword [ebx + 0x101378]
mov eax, dword [eax + 0x1c]
mov eax, dword [eax + esi*4]
mov eax, dword [eax + 8]
cmp dword [eax + 8], 0
jne 0x5ace28
mov eax, ebx
call fcn.005ab720
test al, al
jne 0x5ace28
mov eax, dword [ebx + 0x101378]
mov eax, dword [eax + 0x1c]
mov ecx, dword [eax + esi*4]
mov dl, 1
mov eax, dword [0x5a3b40]
call fcn.005afc44
mov edx, eax
mov eax, dword [ebx + 0x101564]
call fcn.005b0064
mov edx, esi
mov eax, dword [ebx + 0x10133c]
call fcn.004370a4
cmp esi, dword [ebp - 0x1c]
jne 0x5acef9
cmp dword [ebx + 0x101404], 0xffffffff
jne 0x5acef9
mov eax, dword [ebx + 0x10133c]
mov eax, dword [eax + 8]
dec eax
mov dword [ebx + 0x101404], eax
jmp 0x5acef9
mov eax, dword [ebx + 0x101378]
mov eax, dword [eax + 0x1c]
mov eax, dword [eax + esi*4]
mov eax, dword [eax + 8]
cmp dword [eax + 8], 1
jne 0x5ace9a
mov eax, ebx
call fcn.005ab718
test al, al
jne 0x5ace9a
mov eax, dword [ebx + 0x101378]
mov eax, dword [eax + 0x1c]
mov ecx, dword [eax + esi*4]
mov dl, 1
mov eax, dword [0x5a3b40]
call fcn.005afc44
mov edx, eax
mov eax, dword [ebx + 0x101568]
call fcn.005b0064
mov edx, esi
mov eax, dword [ebx + 0x101340]
call fcn.004370a4
cmp esi, dword [ebp - 0x18]
jne 0x5acef9
cmp dword [ebx + 0x101400], 0xffffffff
jne 0x5acef9
mov eax, dword [ebx + 0x101340]
mov eax, dword [eax + 8]
dec eax
mov dword [ebx + 0x101400], eax
jmp 0x5acef9
mov eax, dword [ebx + 0x101378]
mov eax, dword [eax + 0x1c]
mov eax, dword [eax + esi*4]
mov eax, dword [eax + 8]
cmp dword [eax + 8], 3
jne 0x5acef9
mov eax, dword [ebx + 0x101378]
mov eax, dword [eax + 0x1c]
mov ecx, dword [eax + esi*4]
mov dl, 1
mov eax, dword [0x5a3b40]
call fcn.005afc44
mov edx, eax
mov eax, dword [ebx + 0x10156c]
call fcn.005b0064
mov edx, esi
mov eax, dword [ebx + 0x101344]
call fcn.004370a4
cmp esi, dword [ebx + 0x101408]
jne 0x5acef9
mov eax, dword [ebx + 0x101344]
mov eax, dword [eax + 8]
dec eax
mov dword [ebx + 0x101408], eax
inc esi
dec edi
jne 0x5acdab
cmp dword [ebx + 0x101400], 0
jge 0x5acf17
cmp dword [ebx + 0x101404], 0
jl 0x5ad0eb
cmp dword [ebx + 0x101404], 0
jl 0x5acf34
mov eax, ebx
call fcn.005aaabc
test al, al
jne 0x5acf48
mov eax, ebx
call fcn.005a91bc
jmp 0x5acf48
mov dword [ebx + 0x101404], 0xffffffff
mov dword [ebx + 0x101408], 0xffffffff
cmp dword [ebx + 0x101400], 0
jl 0x5acf65
mov eax, ebx
call fcn.005a9f60
test al, al
jne 0x5acf6f
mov eax, ebx
call fcn.005a916c
jmp 0x5acf6f
mov dword [ebx + 0x101400], 0xffffffff
cmp dword [ebx + 0x101408], 0
jl 0x5acf8c
mov eax, ebx
call fcn.005aa8c8
test al, al
jne 0x5acf96
mov eax, ebx
call fcn.005a9194
jmp 0x5acf96
mov dword [ebx + 0x101408], 0xffffffff
xor eax, eax
mov dword [ebx + 0x1015a0], eax
mov dword [ebx + 0x1015a4], 0xfff80000
xor eax, eax
mov dword [ebx + 0x101598], eax
mov dword [ebx + 0x10159c], 0xfff80000
mov dword [ebx + 0x1013b0], 0xffffffff
mov dword [ebx + 0x918], 0xffffffff
mov eax, dword [ebx + 0x101378]
push dword [eax + 0x42c]
push dword [eax + 0x428]
call fcn.005a5758
mov dword [ebx + 0x70], eax
mov dword [ebx + 0x74], edx
cmp dword [ebx + 0x101424], 0
jne 0x5ad00f
cmp dword [ebx + 0x101420], 0
jne 0x5ad00f
cmp dword [ebx + 0x10142c], 0
jne 0x5ad00d
cmp dword [ebx + 0x101428], 0
je 0x5ad06e
mov eax, dword [ebx + 0x101428]
mov edx, dword [ebx + 0x10142c]
sub eax, dword [ebx + 0x101420]
sbb edx, dword [ebx + 0x101424]
push edx
push eax
call fcn.005a5758
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], edx
mov eax, dword [ebx + 0x70]
mov edx, dword [ebx + 0x74]
cmp edx, dword [ebp - 0x24]
jne 0x5ad046
cmp eax, dword [ebp - 0x28]
jae 0x5ad056
jmp 0x5ad048
jge 0x5ad056
mov eax, dword [ebx + 0x70]
mov dword [ebp - 0x30], eax
mov eax, dword [ebx + 0x74]
mov dword [ebp - 0x2c], eax
jmp 0x5ad062
mov eax, dword [ebp - 0x28]
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x24]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x30]
mov dword [ebx + 0x70], eax
mov eax, dword [ebp - 0x2c]
mov dword [ebx + 0x74], eax
cmp dword [ebx + 0x74], 0
jne 0x5ad07c
cmp dword [ebx + 0x70], 0
ja 0x5ad09b
jmp 0x5ad07e
jg 0x5ad09b
cmp dword [ebp - 0x14], 0
je 0x5ad09b
mov eax, dword [ebp - 0x14]
test byte [eax + 8], 1
je 0x5ad09b
mov dword [ebx + 0x70], 0xffffffff
mov dword [ebx + 0x74], 0x7fffffff
mov eax, dword [ebx + 0x70]
mov dword [ebx + 0x68], eax
mov eax, dword [ebx + 0x74]
mov dword [ebx + 0x6c], eax
mov eax, dword [ebx + 0x78]
mov edx, dword [ebx + 0x7c]
add eax, dword [ebx + 0x68]
adc edx, dword [ebx + 0x6c]
mov dword [ebx + 0x88], eax
mov dword [ebx + 0x8c], edx
mov byte [ebx + 0x101580], 0
mov byte [ebp - 5], 1
mov ecx, ebx
mov dl, 1
mov eax, dword [0x5a43c0]
call fcn.005ad8e4
mov esi, eax
mov dword [ebx + 0xf2c], esi
push 0xa
mov eax, dword [esi + 8]
push eax
call fcn.0040c168
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x5ad135
lea eax, [ebp - 0x4c]
call fcn.004062b0
lea eax, [ebp - 0x48]
call fcn.00407158
lea eax, [ebp - 0x44]
call fcn.004062b0
lea eax, [ebp - 0x40]
call fcn.00407158
lea eax, [ebp - 0x3c]
mov edx, 2
call fcn.004062d4
lea eax, [ebp - 0x34]
call fcn.00407158
ret