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

Disassembly:
sub esp, 0xb8
mov eax, dword [0x10155004]
xor eax, esp
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0xbc]
push ebx
push ebp
push esi
push edi
mov dword [esp + 0x54], eax
mov edi, edx
mov edx, dword [ecx + 0x44]
mov dword [esp + 0x24], ecx
mov ecx, edx
mov dword [esp + 0x48], edx
lea eax, [edx + 0x21]
shr eax, 0xc
lea esi, [eax + 1]
lea eax, [eax + eax*4]
mov dword [esp + 0x20], esi
lea eax, [edx + eax*2]
lea esi, [eax*2 + 0x1c]
mov eax, 0x1000
cmp edx, eax
cmova ecx, eax
xor eax, eax
add ecx, ecx
add ecx, esi
adc eax, eax
push eax
push ecx
call fcn.10025ae0
mov ebp, eax
add esp, 8
mov dword [esp + 0x1c], ebp
test ebp, ebp
jne 0x10038b3a
lea eax, [ebp + 7]
jmp 0x10038d6c
push esi
push 0
push ebp
call fcn.10117800
mov ecx, dword [esp + 0x2c]
lea eax, [esi + ebp]
mov dword [esp + 0x48], eax
lea ebx, [edi + 0x22]
mov eax, dword [esp + 0x30]
add esp, 0xc
shr ebx, 0xc
xor esi, esi
mov dword [ebp + 4], ecx
mov dword [esp + 0x44], ebx
mov dword [eax + 0x78], ebp
cmp ebx, ecx
jge 0x10038d64
lea ecx, [esp + 0x2c]
mov edx, ebx
push ecx
mov ecx, eax
call fcn.10037cc0
mov ecx, dword [esp + 0x30]
add esp, 4
mov esi, eax
mov dword [esp + 0x50], esi
test ecx, ecx
je 0x10038bbc
lea ebp, [ecx + 0x4000]
mov dword [esp + 0x28], ebp
test ebx, ebx
jne 0x10038bae
add ecx, 0x88
xor edx, edx
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x30], edx
jmp 0x10038bcc
mov edx, ebx
shl edx, 0xc
sub edx, 0x22
mov dword [esp + 0x30], edx
jmp 0x10038bcc
test esi, esi
je 0x10038d49
mov edx, dword [esp + 0x30]
mov ebp, dword [esp + 0x28]
test esi, esi
jne 0x10038d2f
lea eax, [ebx + 1]
cmp eax, dword [esp + 0x20]
jne 0x10038be5
mov ebp, dword [esp + 0x48]
sub ebp, edx
jmp 0x10038bea
sub ebp, ecx
sar ebp, 2
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x34], ebp
mov eax, dword [ecx + 4]
lea eax, [eax + eax*4]
lea eax, [edx + eax*2]
inc edx
lea ecx, [ecx + eax*2]
mov dword [esp + 0x4c], edx
add ecx, 8
mov dword [esp + 0x30], edx
xor eax, eax
mov dword [esp + 0x40], ecx
test ebp, ebp
jle 0x10038c1d
mov word [ecx + eax*2], ax
inc eax
cmp eax, ebp
jl 0x10038c14
push 0x68
xor esi, esi
lea eax, [esp + 0x5c]
xor edi, edi
push esi
push eax
mov dword [esp + 0x20], edi
mov dword [esp + 0x24], edi
call fcn.10117800
add esp, 0xc
xor ebx, ebx
test ebp, ebp
jle 0x10038cbf
mov eax, dword [esp + 0x40]
mov dword [esp + 0x38], eax
nop dword [eax + eax]
mov edi, 1
mov dword [esp + 0x18], eax
xor esi, esi
mov dword [esp + 0x14], edi
test bl, 1
je 0x10038ca7
mov ebp, dword [esp + 0x2c]
nop dword [eax + eax]
push dword [esp + 0x3c]
mov edx, dword [esp + esi*8 + 0x60]
lea eax, [esp + 0x18]
push eax
lea eax, [esp + 0x20]
mov ecx, ebp
push eax
push dword [esp + esi*8 + 0x64]
call fcn.100389f0
inc esi
mov eax, edi
mov ecx, esi
add esp, 0x10
shl eax, cl
test ebx, eax
jne 0x10038c70
mov edi, dword [esp + 0x14]
mov eax, dword [esp + 0x18]
mov ebp, dword [esp + 0x34]
mov dword [esp + esi*8 + 0x5c], eax
inc ebx
mov eax, dword [esp + 0x38]
add eax, 2
mov dword [esp + esi*8 + 0x58], edi
mov dword [esp + 0x38], eax
cmp ebx, ebp
jl 0x10038c50
inc esi
cmp esi, 0xd
jae 0x10038d02
mov edi, 1
mov ecx, esi
rol edi, cl
nop
test ebp, edi
je 0x10038cf6
push dword [esp + 0x3c]
mov edx, dword [esp + esi*8 + 0x60]
lea eax, [esp + 0x18]
mov ecx, dword [esp + 0x30]
push eax
lea eax, [esp + 0x20]
push eax
push dword [esp + esi*8 + 0x64]
call fcn.100389f0
add esp, 0x10
inc esi
rol edi, 1
cmp esi, 0xd
jb 0x10038cd0
mov edi, dword [esp + 0x14]
mov ebp, dword [esp + 0x1c]
mov ebx, dword [esp + 0x44]
mov ecx, dword [esp + 0x4c]
mov esi, dword [esp + 0x50]
lea eax, [ebx + ebx*4]
mov dword [ebp + eax*4 + 0x18], ecx
mov ecx, dword [esp + 0x40]
mov dword [ebp + eax*4 + 0xc], ecx
mov ecx, dword [esp + 0x2c]
mov dword [ebp + eax*4 + 0x14], edi
mov dword [ebp + eax*4 + 0x10], ecx
jmp 0x10038d33
mov ebp, dword [esp + 0x1c]
inc ebx
mov dword [esp + 0x44], ebx
test esi, esi
jne 0x10038d4e
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
jmp 0x10038b67
mov esi, 1
mov ecx, dword [esp + 0x24]
push ebp
mov dword [ecx + 0x78], 0
call fcn.10025b30
add esp, 4
xor ebp, ebp
mov eax, dword [esp + 0x54]
mov dword [eax], ebp
mov eax, esi
mov ecx, dword [esp + 0xc4]
pop edi
pop esi
pop ebp
pop ebx
xor ecx, esp
call fcn.10115f0d
add esp, 0xb8
ret