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

Disassembly:
push ebp
push ebx
push edi
push esi
sub esp, 0x90
mov ebp, ecx
mov ebx, dword [esp + 0xa4]
mov dword [ebx + 8], 0
mov dword [ebx + 4], 0
mov dword [ebx], 0
mov dword [esp + 0x4c], 0
mov dword [esp + 0x10], 0x100000
mov dword [esp], 0
lea ecx, [esp + 0x10]
mov eax, esp
push 4
push 0x3000
push ecx
push 0
push eax
push 0xffffffffffffffff
call dword [0x442984]
test eax, eax
js 0x430694
mov dword [esp + 0x8c], 0
mov dword [esp + 0x88], 0
mov dword [esp + 0x84], 0
mov dword [esp + 0x80], 0
mov dword [esp + 0x7c], 0
mov dword [esp + 0x78], 0
mov dword [esp + 0x74], 0
lea edx, [esp + 0x14]
lea eax, [esp + 0x18]
rol eax, 0xd
mov esi, eax
xor esi, 0x8b4c2410
and eax, 0x4ae39ed6
mov edi, esi
and edi, 0xb51c2129
or edi, eax
xor edi, 0xa400420
mov ecx, edx
and ecx, 0xc
ror edi, cl
mov dword [esp + 0x68], edi
rol edi, cl
mov eax, edx
and al, 0xc
mov byte [esp + 7], al
mov dword [esp + 0x6c], esi
xor edi, esi
mov dword [esp + 0x64], edi
mov dword [esp + 0x2c], 0x10000
mov dword [esp + 0xc], 0
mov ecx, dword [0x442978]
test ecx, ecx
je 0x43067d
mov edx, dword [ebp]
mov eax, dword [0x44297c]
add eax, 8
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [eax - 8], 0x6d705e18
je 0x4301e0
add eax, 0xc
dec ecx
jne 0x4301c0
jmp 0x43067d
mov byte [esp + 0x24], 0
mov dword [esp + 0x20], 0x900000c2
mov dword [esp + 0x1c], 0xd2ff0000
mov dword [esp + 0x18], 0xba00
mov dword [esp + 0x14], 0xb8
mov eax, dword [eax]
mov dword [esp + 0x15], eax
mov eax, dword [0x442980]
mov dword [esp + 0x1a], eax
mov word [esp + 0x21], 0x18
mov dword [esp + 0x30], 0
mov dword [esp + 0x40], 0x10
push 0x40
push 0x3000
lea eax, [esp + 0x48]
push eax
push 0
mov esi, ebx
mov ebx, ebp
lea ebp, [esp + 0x40]
push ebp
push 0xffffffffffffffff
mov ebp, edx
call dword [0x442984]
mov edi, dword [esp + 0x30]
lea eax, [esp + 0x14]
mov ecx, 4
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
push 0
push 0x1c
lea eax, [esp + 0x7c]
push eax
push 0
push dword [esp + 0x3c]
push ebp
call dword [esp + 0x48]
mov edi, eax
mov dword [esp + 0x3c], 0
push 0x8000
lea eax, [esp + 0x40]
push eax
lea eax, [esp + 0x38]
push eax
mov ebp, ebx
mov ebx, esi
push 0xffffffffffffffff
call dword [0x442988]
cmp edi, 0xbfffffff
ja 0x43067d
test edi, edi
js 0x430420
cmp dword [esp + 0x84], 0x1000
jne 0x430420
cmp dword [esp + 0x88], 1
je 0x430420
mov esi, dword [esp + 0x10]
cmp dword [esp + 0x80], esi
jbe 0x430322
push 0x8000
lea eax, [esp + 0x50]
push eax
lea esi, [esp + 8]
push esi
push 0xffffffffffffffff
call dword [0x442988]
mov dword [esp], 0
mov eax, dword [esp + 0x80]
mov dword [esp + 0x10], eax
push 4
push 0x3000
lea eax, [esp + 0x18]
push eax
push 0
push esi
push 0xffffffffffffffff
call dword [0x442984]
test eax, eax
js 0x43067d
mov esi, dword [esp + 0x10]
mov ecx, dword [0x442978]
test ecx, ecx
je 0x430420
mov eax, ebp
mov ebp, dword [esp]
mov dword [esp + 0x28], eax
mov ebx, dword [eax]
mov eax, dword [0x44297c]
add eax, 8
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
nop
cmp dword [eax - 8], 0xb7fd7148
je 0x430364
add eax, 0xc
dec ecx
jne 0x430350
jmp 0x430414
mov byte [esp + 0x24], 0
mov dword [esp + 0x20], 0x900000c2
mov dword [esp + 0x1c], 0xd2ff0000
mov dword [esp + 0x18], 0xba00
mov dword [esp + 0x14], 0xb8
mov eax, dword [eax]
mov dword [esp + 0x15], eax
mov eax, dword [0x442980]
mov dword [esp + 0x1a], eax
mov word [esp + 0x21], 0x14
mov dword [esp + 0x30], 0
mov dword [esp + 0x40], 0x10
push 0x40
push 0x3000
lea eax, [esp + 0x48]
push eax
push 0
lea eax, [esp + 0x40]
push eax
push 0xffffffffffffffff
call dword [0x442984]
mov edi, dword [esp + 0x30]
lea eax, [esp + 0x14]
mov ecx, 4
xchg esi, eax
rep movsd dword es:[edi], dword [esi]
xchg esi, eax
lea eax, [esp + 0x70]
push eax
push esi
push ebp
push dword [esp + 0x38]
push ebx
lea esi, [esp + 0x44]
call dword [esp + 0x44]
mov edi, eax
mov dword [esp + 0x3c], 0
push 0x8000
lea eax, [esp + 0x40]
push eax
push esi
push 0xffffffffffffffff
call dword [0x442988]
cmp edi, 0xbfffffff
jbe 0x43043f
mov ebx, dword [esp + 0xa4]
mov ebp, dword [esp + 0x28]
nop
mov eax, dword [esp + 0x80]
add eax, dword [esp + 0x74]
mov dword [esp + 0x2c], eax
cmp eax, 0x7fffffff
jb 0x43019a
jmp 0x43067d
push dword [esp + 0xb0]
push dword [esp + 0xb0]
push dword [esp + 0xb0]
push dword [esp + 0x7c]
push dword [esp + 0x10]
push esi
call fcn.004306b0
add esp, 0x18
mov ebp, dword [esp + 0x30]
mov edx, dword [esp + 0x34]
mov ebx, dword [esp + 0xa4]
cmp ebp, edx
je 0x43041b
mov eax, dword [ebx]
mov ecx, dword [ebx + 8]
mov dword [esp + 8], ecx
mov dword [esp + 0x50], ebp
mov ecx, ebp
mov edi, dword [esp + 0xc]
mov dword [esp + 0x54], edx
jmp 0x4304c8
mov ecx, eax
mov eax, edx
mov ebp, ecx
mov edx, ecx
mov ecx, dword [esp + 0x48]
mov dword [edx + esi*4], ecx
add edi, 4
mov dword [ebx + 4], edi
mov ecx, dword [esp + 0xc]
add ecx, 4
cmp ecx, eax
mov edx, eax
mov eax, ebp
je 0x430646
mov dword [esp + 0xc], ecx
mov esi, dword [ecx]
sub esi, dword [esp]
add esi, dword [esp + 0x2c]
mov dword [esp + 0x48], esi
mov ecx, edi
sub ecx, eax
mov esi, ecx
sar esi, 2
cmp edi, dword [esp + 8]
jne 0x4304a0
mov ebp, eax
mov dword [esp + 0x58], ecx
lea edx, [esi + 1]
mov ecx, esi
shr ecx, 1
mov dword [esp + 0x60], esi
add ecx, esi
cmp ecx, edx
ja 0x430501
mov ecx, edx
mov dword [esp + 8], ebp
mov eax, 0xffffffff
cmp ecx, 0x40000000
mov esi, dword [esp + 0x58]
jae 0x43051d
lea eax, [ecx*4]
mov dword [esp + 0x5c], ecx
movzx ecx, byte [esp + 7]
mov byte [esp + 0x14], cl
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0x18], ecx
mov ecx, dword [esp + 0x68]
mov dword [esp + 0x1c], ecx
mov ecx, dword [esp + 0x64]
mov ecx, dword fs:[ecx]
push eax
push 0
push dword [ecx + 0x18]
call dword [0x442fd0]
mov edx, eax
mov eax, dword [esp + 8]
test eax, eax
je 0x430624
cmp edx, eax
mov dword [esp + 0x44], edx
jae 0x430570
mov ecx, esi
mov edi, edx
xchg esi, eax
rep movsb byte es:[edi], byte [esi]
xchg esi, eax
jmp 0x43060d
test esi, esi
je 0x43060d
mov edx, dword [esp + 8]
lea eax, [edx + esi]
dec eax
mov ecx, dword [esp + 0x44]
add ecx, esi
dec ecx
mov ebp, edx
not ebp
add ebp, edi
mov edi, esi
and edi, 7
je 0x4305b2
neg edi
xor edx, edx
nop
nop
nop
nop
nop
nop
nop
nop
movzx ebx, byte [eax + edx]
mov byte [ecx + edx], bl
dec edx
cmp edi, edx
jne 0x4305a0
add eax, edx
add ecx, edx
add esi, edx
cmp ebp, 7
jb 0x43060d
neg esi
xor edx, edx
nop
nop
nop
nop
nop
movzx ebx, byte [eax + edx]
mov byte [ecx + edx], bl
movzx ebx, byte [eax + edx - 1]
mov byte [ecx + edx - 1], bl
movzx ebx, byte [eax + edx - 2]
mov byte [ecx + edx - 2], bl
movzx ebx, byte [eax + edx - 3]
mov byte [ecx + edx - 3], bl
movzx ebx, byte [eax + edx - 4]
mov byte [ecx + edx - 4], bl
movzx ebx, byte [eax + edx - 5]
mov byte [ecx + edx - 5], bl
movzx ebx, byte [eax + edx - 6]
mov byte [ecx + edx - 6], bl
movzx ebx, byte [eax + edx - 7]
mov byte [ecx + edx - 7], bl
add edx, 0xfffffff8
cmp esi, edx
jne 0x4305c0
push dword [esp + 8]
call fcn.0042f7b0
add esp, 4
mov ebx, dword [esp + 0xa4]
mov edx, dword [esp + 0x44]
mov dword [ebx], edx
mov esi, dword [esp + 0x60]
lea edi, [edx + esi*4]
mov eax, dword [esp + 0x5c]
lea eax, [edx + eax*4]
mov dword [esp + 8], eax
mov dword [ebx + 8], eax
mov ebp, edx
mov eax, dword [esp + 0x54]
jmp 0x4304a8
mov eax, dword [esp + 0x50]
test eax, eax
mov ebp, dword [esp + 0x28]
je 0x430674
mov dword [esp + 0xc], edi
cmp eax, edx
je 0x430420
push eax
call fcn.0042f7b0
add esp, 4
mov dword [esp + 0x30], 0
jmp 0x430420
mov dword [esp + 0xc], edi
jmp 0x430420
push 0x8000
lea eax, [esp + 0x50]
push eax
lea eax, [esp + 8]
push eax
push 0xffffffffffffffff
call dword [0x442988]
mov eax, ebx
add esp, 0x90
pop esi
pop edi
pop ebx
pop ebp
ret 0x10