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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x130
mov esi, dword [ebp + 8]
xorps xmm0, xmm0
movaps xmmword [esp + 0x110], xmm0
movaps xmmword [esp + 0x100], xmm0
movaps xmmword [esp + 0xf0], xmm0
movaps xmmword [esp + 0xe0], xmm0
movaps xmmword [esp + 0xd0], xmm0
movaps xmmword [esp + 0xc0], xmm0
movaps xmmword [esp + 0xb0], xmm0
movaps xmmword [esp + 0xa0], xmm0
movups xmmword [esp + 0x60], xmm0
movups xmmword [esp + 0x50], xmm0
mov dword [esp + 0x74], 0
mov dword [esp + 0x70], 0
mov dword [esp + 0x24], 0
mov dword [esp + 0x20], 0
mov ebx, 0x7f2bb701
cmp dword [esi], 0x7f2bb701
jne 0x42db34
lea eax, [esp + 0xa0]
push eax
push dword [ebp + 0xc]
push esi
call fcn.0041a460
add esp, 0xc
mov ebx, eax
mov dword [esp + 0x60], eax
test eax, eax
jne 0x42db34
mov ecx, dword [esp + 0xc0]
mov ebx, 0x7f2bb79d
test ecx, 0x10000000
jne 0x42db34
test dword [ebp + 0x10], 0x1000
jne 0x42d5c9
mov eax, dword [ebp + 0x1c]
mov edx, dword [ebp + 0x18]
mov dword [esp + 0xc], ecx
mov ecx, dword [ebp + 0x14]
mov edi, dword [esi + 0x14]
mov dword [esp + 0x48], esi
mov dword [esp + 0x4c], edx
mov dword [esp + 0x70], eax
mov eax, dword [ebp + 0x10]
mov dword [esp + 0x5c], eax
mov eax, ecx
test ecx, ecx
mov ecx, dword [esp + 0xc]
je 0x42d5f9
mov dword [esp + 0x64], eax
add eax, edi
mov dword [esp + 0x68], eax
add eax, edi
mov dword [esp + 0x6c], eax
mov eax, dword [esi + 0x10]
xor ebx, ebx
cmp dword [eax + 0x48], 1
jne 0x42d54b
mov eax, dword [ebp + 0x10]
test al, 4
jne 0x42d54b
mov eax, dword [esp + 0xc4]
test eax, eax
je 0x42d54b
mov dword [esp + 8], edi
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], 0
sub esp, 0x20
mov eax, dword [ebp + 0x1c]
mov dword [esp + 0x1c], eax
movaps xmm0, xmmword [0x493b10]
movups xmmword [esp + 8], xmm0
lea eax, [esp + 0x40]
mov dword [esp + 4], eax
mov dword [esp], esi
mov dword [esp + 0x18], 0
call dword [ebp + 0x18]
add esp, 0x20
mov ebx, eax
mov eax, dword [esp + 0x20]
mov dword [esp + 0xc4], eax
test bl, 2
jne 0x42d94e
mov eax, dword [ebp + 0x10]
test al, 8
je 0x42d540
mov eax, ebx
and eax, 1
jne 0x42d943
mov ecx, dword [esp + 0xc0]
mov edi, dword [esp + 8]
test ecx, 0x80000
jne 0x42d627
shr edi, 2
mov dword [esp + 8], edi
mov eax, dword [ebp + 0x10]
and eax, 1
mov dword [esp + 0xc], eax
xor esi, esi
xor edi, edi
jmp 0x42d57f
add esi, 1
adc edi, 0
cmp esi, 0xc
je 0x42d925
mov eax, dword [esp + esi*4 + 0xc8]
mov ecx, eax
or ecx, dword [esp + 0xc]
je 0x42d570
mov dword [esp + 0x20], eax
mov dword [esp + 0x24], 0
push dword [ebp + 0x1c]
push esi
push 0
push 0
push edi
push esi
lea eax, [esp + 0x38]
push eax
push dword [ebp + 8]
call dword [ebp + 0x18]
add esp, 0x20
or ebx, eax
mov eax, dword [esp + 0x20]
mov dword [esp + esi*4 + 0xc8], eax
test bl, 2
je 0x42d570
jmp 0x42d94e
movzx eax, word [esp + 0xa0]
and eax, 0xf000
cmp eax, 0x4000
je 0x42d477
mov ebx, 0x7f2bb752
cmp dword [esp + 0x10c], 0
jne 0x42db34
jmp 0x42d477
mov ebx, 0x7f2bb746
cmp edi, 0x55555555
ja 0x42db34
lea eax, [edi + edi*2]
push eax
call sub.api_ms_win_crt_heap_l1_1_0.dll_malloc
mov ecx, dword [esp + 0x10]
add esp, 4
test eax, eax
jne 0x42d4a8
jmp 0x42db34
mov dword [esp + 0x18], 0
xorps xmm0, xmm0
movaps xmmword [esp + 0x30], xmm0
mov dword [esp + 0x44], 0
mov dword [esp + 0x40], 0
movaps xmmword [esp + 0x80], xmm0
mov dword [esp + 0x94], 0
mov dword [esp + 0x90], 0
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x2c], 0
mov dword [esp + 0x28], 0
lea eax, [esp + 0x18]
push eax
lea eax, [esp + 0xa4]
push eax
push dword [ebp + 0xc]
push esi
call fcn.004144c0
add esp, 0x10
mov dword [esp + 0x60], eax
test eax, eax
jne 0x42d94e
mov eax, dword [ebp + 0x10]
and eax, 2
mov dword [esp + 0x78], eax
mov eax, 1
mov dword [esp + 8], 0
xor esi, esi
mov dword [esp + 0x1c], esi
jmp 0x42d70d
lea eax, [esp + 0x80]
push eax
push 9
push dword [esp + 0x20]
call fcn.004147b0
add esp, 0xc
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x3c]
mov edi, dword [esp + 0x40]
mov esi, eax
add eax, edi
mov edx, ecx
adc ecx, 0
cmp dword [esp + 8], eax
mov eax, dword [esp + 0x1c]
sbb eax, ecx
mov eax, 9
jb 0x42d7fc
test eax, eax
je 0x42d72b
lea ecx, [esp + 0x30]
push ecx
push eax
push dword [esp + 0x20]
call fcn.004147b0
add esp, 0xc
test eax, eax
jne 0x42d986
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x34]
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x44]
mov dword [esp + 0xc], eax
test al, 1
jne 0x42d6c9
mov eax, 9
mov ecx, dword [ebp + 0x10]
test cl, 4
jne 0x42d70d
mov edx, dword [esp + 0x78]
test edx, edx
sete al
mov esi, dword [esp + 0xc]
and esi, 4
sete cl
or esi, edx
je 0x42d774
or al, cl
mov eax, 9
jne 0x42d70d
sub esp, 0x20
mov eax, dword [ebp + 0x1c]
mov dword [esp + 0x1c], eax
movaps xmm0, xmmword [0x493b20]
movups xmmword [esp + 8], xmm0
lea eax, [esp + 0x30]
mov dword [esp + 4], eax
mov eax, dword [ebp + 8]
mov dword [esp], eax
mov dword [esp + 0x18], 0
call dword [ebp + 0x18]
add esp, 0x20
or ebx, eax
test bl, 1
jne 0x42d7c0
mov eax, 9
test bl, 2
je 0x42d70d
jmp 0x42db00
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x34], ecx
mov dword [esp + 0x30], eax
lea eax, [esp + 0x30]
push eax
push 0
push dword [esp + 0x20]
call fcn.004152b0
add esp, 0xc
mov edi, eax
mov ecx, ebx
and ecx, 2
mov eax, 9
or ecx, edi
je 0x42d70d
jmp 0x42db02
mov ecx, dword [esp + 8]
sub ecx, esi
sbb dword [esp + 0x1c], edx
mov eax, 0
cmovb ecx, eax
mov eax, dword [esp + 0x14]
add ecx, dword [esp + 0x10]
adc eax, 0
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], eax
test edi, edi
je 0x42d8e8
mov edi, dword [esp + 0xc]
shr edi, 1
and edi, 1
mov dword [esp + 0xc], edi
mov dword [esp + 8], 0
mov edi, edx
mov edx, esi
mov esi, edi
jmp 0x42d89c
push dword [esp + 0xc]
push dword [esp + 0x30]
push dword [esp + 0x30]
push esi
push edi
push dword [esp + 0x2c]
call fcn.00415d20
mov edx, edi
add esp, 0x18
mov edi, eax
mov eax, ebx
and eax, 2
or eax, edi
jne 0x42db02
mov ecx, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
add ecx, 1
adc eax, 0
mov dword [esp + 0x10], ecx
add edx, 1
adc esi, 0
mov dword [esp + 0x14], eax
mov edi, dword [esp + 8]
inc edi
mov dword [esp + 8], edi
cmp edi, dword [esp + 0x40]
jae 0x42d8ee
mov dword [esp + 0x28], ecx
mov dword [esp + 0x2c], eax
push dword [ebp + 0x1c]
push 0
push 0
push 0
push esi
mov edi, edx
push edx
lea eax, [esp + 0x40]
push eax
push dword [ebp + 8]
call dword [ebp + 0x18]
add esp, 0x20
or ebx, eax
mov ecx, dword [ebp + 0x10]
test cl, 8
je 0x42d8d4
mov ecx, ebx
and ecx, 1
jne 0x42daf5
test al, 1
jne 0x42d846
test bl, 2
mov edx, edi
je 0x42d871
jmp 0x42db00
mov eax, edx
mov edx, esi
mov esi, eax
mov dword [esp + 8], edx
mov eax, 9
cmp dword [esp + 0x7c], 0
jne 0x42d6c3
movsd xmm0, qword [esp + 0x90]
movsd qword [esp + 0x40], xmm0
movaps xmm0, xmmword [esp + 0x80]
movaps xmmword [esp + 0x30], xmm0
xor eax, eax
jmp 0x42d6c3
mov dword [esp + 0x50], esi
mov dword [esp + 0x54], edi
mov eax, dword [ebp + 0x10]
test al, 8
je 0x42da4a
mov eax, ebx
and eax, 1
je 0x42da4a
mov dword [esp + 0x60], 0x7f2bb76b
or ebx, 6
test bl, 1
je 0x42db17
lea eax, [esp + 0xa0]
push eax
push dword [ebp + 0xc]
push dword [ebp + 8]
call fcn.0041a7a0
add esp, 0xc
test eax, eax
mov ecx, dword [ebp + 0x14]
je 0x42db1a
mov dword [esp + 0x60], eax
mov ebx, 4
jmp 0x42db1a
mov edi, eax
cmp eax, 0x7f2bb77c
jne 0x42db02
mov dword [esp + 0x60], 0
mov eax, dword [ebp + 0x10]
test al, 1
je 0x42db06
mov ecx, dword [esp + 8]
xor edi, edi
mov dword [esp + 0x14], 0
mov dword [esp + 0x10], 0
push dword [ebp + 0x1c]
push 0
push 0
push 0
push dword [esp + 0x2c]
mov dword [esp + 0x1c], ecx
push ecx
lea eax, [esp + 0x28]
push eax
push dword [ebp + 8]
call dword [ebp + 0x18]
add esp, 0x20
or ebx, eax
mov ecx, dword [ebp + 0x10]
test cl, 8
je 0x42d9f1
mov ecx, ebx
and ecx, 1
jne 0x42daf5
test al, 1
je 0x42db02
push 0
push dword [esp + 0x18]
push dword [esp + 0x18]
mov esi, dword [esp + 0x28]
push esi
push dword [esp + 0x18]
push dword [esp + 0x2c]
call fcn.00415d20
add esp, 0x18
test eax, eax
jne 0x42dafc
mov ecx, dword [esp + 8]
add ecx, 1
adc esi, 0
mov dword [esp + 0x1c], esi
test bl, 2
jne 0x42db02
mov eax, dword [esp + 0x14]
or eax, dword [esp + 0x10]
jne 0x42d9ac
jmp 0x42db02
mov eax, dword [esp + 0xf8]
or eax, dword [esp + 0xc]
je 0x42da7c
lea ecx, [esp + 0xf8]
lea eax, [esp + 0x48]
xor edx, edx
push eax
push 0xc
call fcn.0042db40
add esp, 8
or ebx, eax
test bl, 2
jne 0x42d94e
jmp 0x42da8b
add esi, dword [esp + 8]
adc edi, 0
mov dword [esp + 0x50], esi
mov dword [esp + 0x54], edi
mov eax, dword [esp + 0xfc]
or eax, dword [esp + 0xc]
je 0x42dabd
lea ecx, [esp + 0xfc]
lea eax, [esp + 0x48]
xor edx, edx
push eax
push 0xd
call fcn.0042de60
add esp, 8
or ebx, eax
test bl, 2
jne 0x42d94e
jmp 0x42dacd
mov eax, dword [esp + 8]
imul eax, eax
add dword [esp + 0x50], eax
adc dword [esp + 0x54], 0
mov eax, dword [esp + 0xc]
or eax, dword [esp + 0x100]
je 0x42d94e
lea ecx, [esp + 0x100]
lea edx, [esp + 0x48]
call fcn.0042e120
or ebx, eax
jmp 0x42d94e
mov edi, 0x7f2bb76b
jmp 0x42db02
mov edi, eax
jmp 0x42db02
xor edi, edi
mov dword [esp + 0x60], edi
push dword [esp + 0x18]
call fcn.00414420
add esp, 4
mov ebx, 4
mov ecx, dword [ebp + 0x14]
test ecx, ecx
jne 0x42db2a
push dword [esp + 0x64]
call sub.api_ms_win_crt_heap_l1_1_0.dll_free
add esp, 4
shl ebx, 0x1d
sar ebx, 0x1f
and ebx, dword [esp + 0x60]
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret