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

Disassembly:
sub esp, 0x20
push ebx
mov ebx, dword [esp + 0x30]
push esi
mov esi, ecx
push edi
test ebx, ebx
je 0x53407e
mov edi, dword [esp + 0x3c]
test edi, edi
je 0x53407e
cmp byte [esi + 0xc], 0
push ebp
je 0x533d81
cmp byte [esi + 0xd], 0
je 0x534060
lea ecx, [esi + 0x10]
mov byte [esi + 0xd], 0
push 0x100000
call fcn.004135fe
test al, al
je 0x53406f
push 0x100000
lea ecx, [esi + 0x40]
call fcn.0040ff1e
test al, al
je 0x53406f
mov eax, dword [ebx]
xorps xmm0, xmm0
mov ecx, dword [ebx + 4]
mov dword [esi + 0x2c88], eax
mov dword [esi + 0x2c8c], ecx
lea ecx, [esi + 0x10]
mov eax, dword [edi + 4]
mov ebp, dword [edi]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x38]
mov dword [esi + 0x24], eax
movzx eax, byte [esi + 0xc]
push eax
movlpd qword [esp + 0x1c], xmm0
mov dword [esp + 0x40], ebp
call fcn.0052f580
mov eax, dword [esp + 0x34]
lea ecx, [esi + 0x40]
mov dword [esi + 0x4c], eax
call fcn.0040ff6a
mov dword [esi + 0x38], 0x20
mov dword [esi + 0x3c], 0
mov eax, dword [esi + 0x40]
cmp eax, dword [esi + 0x44]
jb 0x533e1b
lea ecx, [esi + 0x40]
call fcn.0040ffef
mov dl, al
jmp 0x533e21
mov dl, byte [eax]
inc eax
mov dword [esi + 0x40], eax
mov ecx, dword [esi + 0x3c]
add dword [esi + 0x38], 0xfffffff8
shl ecx, 8
movzx eax, dl
or ecx, eax
cmp dword [esi + 0x38], 8
mov dword [esi + 0x3c], ecx
jae 0x533e07
cmp byte [esi + 0xc], 0
jne 0x533ee4
push 0x178
lea eax, [esi + 0x2c90]
push 0
push eax
call sub.msvcrt.dll_memset
push 0x404
lea eax, [esi + 0x2e08]
mov dword [esi + 0x6c], 0
mov dword [esi + 0x70], 0
mov dword [esi + 0x74], 0
mov dword [esi + 0x78], 0
push 0
push eax
mov dword [esi + 0x68], 0
mov dword [esi + 0x7c], 0
call sub.msvcrt.dll_memset
mov eax, ebp
add esp, 0x18
or eax, dword [esp + 0x40]
jne 0x533edd
lea ecx, [esi + 0x38]
call fcn.0048bb44
add eax, 2
adc edx, 0
cmp edx, dword [esi + 0x2c8c]
ja 0x533ecd
jb 0x533ebe
cmp eax, dword [esi + 0x2c88]
ja 0x533ecd
mov ecx, esi
call fcn.00534f20
test al, al
je 0x534060
mov byte [esi + 0xd], 1
xor eax, eax
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x20
ret 0x14
mov ecx, esi
call fcn.00534f20
cmp byte [esi + 0xe], 0
je 0x534060
lea ecx, [esi + 0x10]
call fcn.0041371b
mov ebx, dword [esp + 0x1c]
mov edi, dword [esp + 0x18]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x40]
mov dword [esp + 0x14], edx
mov edx, ebp
cmp ebx, eax
ja 0x534060
jb 0x533f20
cmp edi, edx
jae 0x534035
nop
mov ecx, edx
mov ebp, 0x100000
sub ecx, edi
sbb eax, ebx
jne 0x533f37
jb 0x533f33
cmp ecx, ebp
jae 0x533f37
mov ebp, edx
sub ebp, edi
lea ecx, [esi + 0x10]
call fcn.0041371b
cmp byte [esi + 0xf], 0
mov ecx, esi
mov dword [esp + 0x38], eax
mov dword [esp + 0x34], edx
push ebp
je 0x533f57
call fcn.00534a60
jmp 0x533f5c
call fcn.00534400
test al, al
je 0x534060
mov eax, dword [esi + 0x60]
cmp eax, 4
ja 0x534060
mov ecx, 0x20
shl eax, 3
sub ecx, dword [esi + 0x38]
cmp ecx, eax
jb 0x534060
lea ecx, [esi + 0x10]
call fcn.0041371b
mov edi, eax
mov ebx, edx
sub eax, dword [esp + 0x38]
mov ecx, ebx
mov dword [esp + 0x18], eax
sbb ecx, dword [esp + 0x34]
mov dword [esp + 0x1c], ecx
test ecx, ecx
ja 0x533fba
jb 0x533fab
cmp eax, ebp
jae 0x533fba
mov ecx, esi
call fcn.00534f20
test al, al
je 0x534060
sub edi, dword [esp + 0x10]
mov ebp, dword [esp + 0x44]
sbb ebx, dword [esp + 0x14]
mov dword [esp + 0x18], edi
mov dword [esp + 0x1c], ebx
test ebp, ebp
je 0x53401e
mov edx, dword [esi + 0x40]
xor ecx, ecx
sub edx, dword [esi + 0x48]
mov eax, 0x20
sub eax, dword [esi + 0x38]
shr eax, 3
sub edx, eax
mov eax, dword [ebp]
sbb ecx, ecx
add edx, dword [esi + 0x60]
adc ecx, 0
add edx, dword [esi + 0x50]
mov dword [esp + 0x20], edx
adc ecx, dword [esi + 0x54]
mov dword [esp + 0x24], ecx
lea ecx, [esp + 0x18]
push ecx
lea ecx, [esp + 0x24]
push ecx
push ebp
call dword [eax + 0xc]
test eax, eax
jne 0x533ed3
mov ebx, dword [esp + 0x1c]
mov edi, dword [esp + 0x18]
mov eax, dword [esp + 0x40]
mov edx, dword [esp + 0x3c]
cmp ebx, eax
ja 0x534060
jae 0x533f16
jmp 0x533f20
cmp ebx, eax
ja 0x534060
jb 0x53403f
cmp edi, edx
ja 0x534060
mov ecx, esi
call fcn.00534cc0
test al, al
je 0x534060
lea ecx, [esi + 0x10]
mov byte [esi + 0xd], 1
call fcn.0041363b
pop ebp
pop edi
pop esi
pop ebx
add esp, 0x20
ret 0x14
pop ebp
pop edi
pop esi
mov eax, 1
pop ebx
add esp, 0x20
ret 0x14
pop ebp
pop edi
pop esi
mov eax, 0x8007000e
pop ebx
add esp, 0x20
ret 0x14
pop edi
pop esi
mov eax, 0x80070057
pop ebx
add esp, 0x20
ret 0x14