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

Disassembly:
mov ecx, dword fs:[0x14]
mov ecx, dword [ecx]
lea eax, [esp - 0xc]
cmp eax, dword [ecx + 8]
jbe 0x53079e
sub esp, 0x8c
movzx ecx, byte [esp + 0x94]
test cl, 4
je 0x5303e3
cmp cl, 4
jne 0x53039c
mov edx, dword [esp + 0x98]
test edx, 0xf
je 0x5303ea
mov dword [esp + 0x84], 0
mov dword [esp + 0x88], 0
mov dword [esp], edx
call fcn.00409720
mov eax, dword [esp + 4]
lea ecx, [0x69b600]
mov dword [esp + 0x84], ecx
mov dword [esp + 0x88], eax
lea eax, [0x7039fa]
mov dword [esp], eax
mov dword [esp + 4], 0x35
lea eax, [esp + 0x84]
mov dword [esp + 8], eax
mov dword [esp + 0xc], 1
mov dword [esp + 0x10], 1
call fcn.004cde70
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0xac], 0
mov dword [esp + 0xb0], eax
mov dword [esp + 0xb4], ecx
add esp, 0x8c
ret
lea eax, [0x6a9700]
mov dword [esp], eax
call fcn.0040be50
mov eax, dword [esp + 4]
mov dword [eax + 4], 0x2a
lea ecx, [0x700173]
mov dword [eax], ecx
mov dword [esp + 0xac], 0
lea ecx, [0x785138]
mov dword [esp + 0xb0], ecx
mov dword [esp + 0xb4], eax
add esp, 0x8c
ret
mov edx, dword [esp + 0x98]
test cl, 2
setne bl
movzx ebx, bl
test cl, 1
je 0x530400
or ebx, 2
test cl, 4
jmp 0x530403
test cl, 4
je 0x530408
or ebx, 4
test cl, 8
je 0x530410
or ebx, 8
test cl, 0x10
je 0x530418
or ebx, 0x20
test cl, 0x40
je 0x530428
or ebx, 0x80
test cl, 0x40
jmp 0x530438
test cl, 0x20
je 0x530435
or ebx, 8
test cl, 0x40
jmp 0x530438
test cl, 0x40
je 0x530441
mov eax, 0x20000
jmp 0x530443
xor eax, eax
test cl, 0x60
je 0x53044f
mov ebp, 0x20
jmp 0x530451
xor ebp, ebp
mov dword [esp + 0x24], ebx
mov dword [esp + 0x20], eax
lea edi, [esp + 0x50]
xor eax, eax
call fcn.00465fea
mov dword [esp + 0x50], edx
movzx ecx, byte [esp + 0xa8]
movzx esi, cl
mov dword [esp + 0x54], esi
mov dword [esp + 0x58], ebx
mov esi, dword [esp + 0x20]
mov dword [esp + 0x5c], esi
mov dword [esp + 0x60], ebp
mov ebp, dword [esp + 0x90]
mov esi, dword [ebp]
mov dword [esp], esi
lea esi, [esp + 0x50]
mov dword [esp + 4], esi
mov esi, dword [esp + 0x9c]
mov dword [esp + 8], esi
mov esi, dword [esp + 0xa0]
mov dword [esp + 0xc], esi
mov esi, dword [esp + 0xa4]
mov dword [esp + 0x10], esi
call fcn.0052c9e0
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x18]
mov ebp, dword [esp + 0x1c]
test edx, edx
jne 0x53077e
mov dword [esp + 0x78], ecx
movzx edx, byte [esp + 0x94]
test dl, 0x40
jne 0x5305d6
test dl, 0x20
jne 0x5304f8
xor eax, eax
jmp 0x53056e
lea edi, [esp + 0x28]
xor eax, eax
call fcn.00465feb
mov dword [esp + 0x28], 0x27
mov dword [esp + 0x2c], 0xb
mov ecx, dword [esp + 0x98]
mov edx, ecx
sar ecx, 0x1f
shr ecx, 0x1e
add ecx, edx
sar ecx, 2
mov dword [esp + 0x34], ecx
mov dword [esp + 0x38], 1
mov ecx, dword [esp + 0x90]
mov ebx, dword [ecx]
mov dword [esp], ebx
mov ebx, dword [esp + 0x78]
mov dword [esp + 4], ebx
lea ebp, [esp + 0x28]
mov dword [esp + 8], ebp
call fcn.0052ce70
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
test edx, edx
jne 0x530575
mov eax, ecx
mov ecx, dword [esp + 0x78]
xor edx, edx
jmp 0x53064e
mov dword [esp + 0x74], ebx
mov dword [esp + 0x70], ebp
mov eax, dword [esp + 0x78]
mov ecx, dword [eax]
mov ecx, dword [ecx + 8]
mov dword [esp + 0x7c], eax
mov dword [esp], ecx
mov dword [esp + 4], 1
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
call fcn.00463dc0
mov dword [esp + 0xac], 0
mov eax, dword [esp + 0x74]
mov dword [esp + 0xb0], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0xb4], eax
add esp, 0x8c
ret
lea edi, [esp + 0x3c]
xor eax, eax
call fcn.00465feb
mov dword [esp + 0x3c], 0x27
mov dword [esp + 0x40], 1
mov ecx, dword [esp + 0x98]
mov edx, ecx
sar ecx, 0x1f
shr ecx, 0x1e
add ecx, edx
sar ecx, 2
mov dword [esp + 0x48], ecx
mov dword [esp + 0x4c], 1
mov ecx, dword [esp + 0x90]
mov ebx, dword [ecx]
mov dword [esp], ebx
mov ebx, dword [esp + 0x78]
mov dword [esp + 4], ebx
lea ebp, [esp + 0x3c]
mov dword [esp + 8], ebp
call fcn.0052cf90
mov ecx, dword [esp + 0xc]
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0x10]
mov ebp, dword [esp + 0x14]
test edx, edx
jne 0x53071a
xor eax, eax
mov edx, ecx
mov dword [esp + 0x6c], eax
mov dword [esp + 0x68], edx
lea ecx, [0x6d0c20]
mov dword [esp], ecx
call fcn.0040be50
mov edi, dword [esp + 4]
mov eax, dword [0x1eaa9f0]
test eax, eax
jne 0x530684
mov ecx, dword [esp + 0x90]
mov dword [edi], ecx
mov ecx, dword [esp + 0x78]
mov dword [edi + 8], ecx
jmp 0x5306a2
mov eax, dword [esp + 0x90]
call fcn.00465d80
lea ecx, [edi + 8]
mov eax, dword [esp + 0x78]
mov edx, edi
mov edi, ecx
call fcn.00465d80
mov edi, edx
mov ecx, dword [esp + 0x24]
mov dword [edi + 4], ecx
mov ecx, dword [esp + 0x98]
mov dword [edi + 0x14], ecx
mov ecx, dword [0x1eaa9f0]
test ecx, ecx
jne 0x5306cd
mov eax, dword [esp + 0x6c]
mov dword [edi + 0xc], eax
mov eax, dword [esp + 0x68]
mov dword [edi + 0x10], eax
jmp 0x5306eb
lea ecx, [edi + 0xc]
mov eax, dword [esp + 0x6c]
mov edx, edi
mov edi, ecx
call fcn.00465d80
lea edi, [edx + 0x10]
mov eax, dword [esp + 0x68]
call fcn.00465d80
mov edi, edx
movzx eax, byte [esp + 0xa8]
mov byte [edi + 0x18], al
mov dword [esp + 0xac], edi
mov dword [esp + 0xb0], 0
mov dword [esp + 0xb4], 0
add esp, 0x8c
ret
mov dword [esp + 0x74], ebx
mov dword [esp + 0x70], ebp
mov eax, dword [esp + 0x78]
mov ecx, dword [eax]
mov ecx, dword [ecx + 8]
mov dword [esp + 0x80], eax
mov dword [esp], ecx
mov dword [esp + 4], 1
mov dword [esp + 8], eax
mov dword [esp + 0xc], 0
mov dword [esp + 0x10], 0
call fcn.00463dc0
mov dword [esp + 0xac], 0
mov eax, dword [esp + 0x74]
mov dword [esp + 0xb0], eax
mov eax, dword [esp + 0x70]
mov dword [esp + 0xb4], eax
add esp, 0x8c
ret
mov dword [esp + 0xac], 0
mov dword [esp + 0xb0], ebx
mov dword [esp + 0xb4], ebp
add esp, 0x8c
ret
call fcn.004649b0
jmp fcn.005302c0