Function at 0x42f3cd
Capabilities:
Encode data using base64
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x348
call 0x42f3e1
pop eax
mov dword [esp + 0xf8], 0
mov dword [esp], ecx
mov edi, edx
mov dword [esp + 0x94], eax
mov eax, dword [ecx + 8]
mov ecx, dword [eax + 0x60]
test ecx, ecx
je 0x42f41a
mov edx, dword [eax + 0x58]
xor esi, esi
xor ebx, ebx
cmp dword [edx], 2
sete bl
add edx, 0x10
add esi, ebx
dec ecx
jne 0x42f408
jmp 0x42f41c
xor esi, esi
mov ecx, dword [eax + 0x4c]
imul eax, dword [eax + 0x54], 0x11c
mov dword [esp + 0x44], esi
mov edx, eax
test eax, eax
je 0x42f445
test byte [ecx + 0x105], 1
lea ecx, [ecx + 0x11c]
lea eax, [edx - 0x11c]
je 0x42f42a
mov eax, dword [esp]
mov dword [esp + 0x114], edx
mov dword [esp + 0x90], 0
mov dword [esp + 0x10], 0
mov dword [esp + 0x1c], edi
lea ecx, [eax + 0x10]
add eax, 0xc
mov dword [esp + 0x118], eax
lea eax, [edi + 0x10]
mov dword [esp + 0x144], ecx
mov dword [esp + 0x11c], eax
xor eax, eax
inc eax
mov dword [esp + 0x28], eax
mov dword [esp + 0x14], esi
mov ecx, dword [esp + 0xfc]
mov eax, dword [esp + 0xf8]
mov dword [esp + 0x9c], ecx
mov ecx, dword [esp + 0x100]
mov dword [esp + 0x24], eax
dec eax
mov dword [esp + 0xf4], eax
mov dword [esp + 0x20], ecx
mov eax, dword [ebp + 8]
mov esi, dword [ebp + 0xc]
mov ecx, dword [eax + 8]
cmp esi, ecx
mov dword [esp + 0x18], ecx
jae 0x430fc5
mov edx, dword [eax]
mov eax, esi
mov ebx, 0xffffffff
shl eax, 4
inc esi
cmove esi, ebx
test byte [esp + 0x10], 1
mov ecx, dword [edx + eax]
mov eax, dword [edx + eax + 8]
mov dword [ebp + 0xc], esi
mov dword [esp + 4], ecx
mov ecx, dword [esp]
mov dword [esp + 0xc], eax
mov ebx, dword [ecx + 8]
jne 0x42ff23
mov ecx, dword [ebx + 0x144]
mov eax, dword [ebx + 0x148]
mov dword [esp + 0x60], edx
bt ecx, 0xe
mov dword [esp + 8], eax
jb 0x42f536
mov eax, dword [esp + 8]
and eax, 0x4000
jne 0x42f536
cmp dword [esp + 0xf4], 2
jb 0x42f5ce
cmp byte [esp + 0x90], 0
mov dword [esp + 0xf0], ecx
mov dword [esp + 0x2c], ebx
setne byte [esp + 0x104]
mov ebx, dword [esp + 4]
mov edi, dword [esp + 0xc]
lea ecx, [esp + 0x170]
mov edx, ebx
push edi
call fcn.00448bc0
add esp, 4
mov eax, dword [esp + 0x170]
mov edx, edi
test eax, eax
jne 0x42f586
mov ebx, dword [esp + 0x174]
mov edx, dword [esp + 0x178]
mov dword [esp + 0x174], ebx
mov dword [esp + 0x178], edx
mov dword [esp + 0x170], eax
mov cl, byte [esp + 0x104]
xor eax, eax
lea edx, [esp + 0x170]
mov al, cl
mov ecx, dword [esp]
push eax
call fcn.00435902
add esp, 4
mov edi, eax
test eax, eax
mov ebx, dword [esp + 0x2c]
mov eax, dword [esp + 0xf0]
jne 0x43107f
mov ecx, dword [esp + 0xc]
mov esi, dword [esp + 0x14]
cmp ecx, 2
jne 0x42f646
mov eax, dword [esp + 4]
mov edi, dword [esp + 0x1c]
movzx eax, word [eax]
cmp eax, 0x2d2d
jne 0x42f650
mov eax, dword [esp + 0x24]
cmp eax, 1
je 0x42f5fb
cmp eax, 2
jne 0x42f626
mov ecx, dword [ebx + 0x4c]
mov edx, dword [ebx + 0x54]
push 0x4bff3c
push dword [esp + 0x24]
push dword [esp + 0xa4]
call fcn.004367fa
add esp, 0xc
test byte [eax + 0x104], 0x20
jne 0x430c60
cmp dword [edi], 0
mov al, 1
mov dword [esp + 0x10], eax
jne 0x42f4bb
mov eax, dword [edi + 0x18]
mov dword [edi], 1
mov dword [edi + 4], eax
jmp 0x42f4bb
mov edi, dword [esp + 0x1c]
jb 0x430409
mov eax, dword [esp + 4]
movzx eax, word [eax]
cmp eax, 0x2d2d
jne 0x430411
mov edx, ecx
add edx, 0xfffffffe
je 0x430411
mov eax, dword [esp + 4]
lea ebx, [eax + 2]
mov esi, edx
lea ecx, [esp + 0x170]
mov edx, ebx
push 1
push 0x4c093a
push esi
call fcn.004442c1
add esp, 0xc
mov eax, dword [esp + 0x170]
test eax, eax
je 0x42f6be
mov ecx, dword [esp + 0x178]
mov edx, dword [esp + 0x17c]
mov esi, dword [esp + 0x174]
mov ebx, eax
mov dword [esp + 0x2c], ecx
mov dword [esp + 0xf0], edx
jmp 0x42f6c6
mov dword [esp + 0x2c], 0
lea ecx, [esp + 0x170]
mov edx, ebx
mov dword [esp + 8], esi
push esi
call fcn.00448bc0
add esp, 4
mov esi, dword [esp + 0x170]
test esi, esi
jne 0x42f6f9
mov ebx, dword [esp + 0x174]
mov eax, dword [esp + 0x178]
mov dword [esp + 8], eax
mov eax, dword [esp + 0xf8]
cmp eax, 2
je 0x42f70a
cmp eax, 1
jne 0x42f73e
mov eax, dword [esp]
mov eax, dword [eax + 8]
mov ecx, dword [eax + 0x4c]
mov edx, dword [eax + 0x54]
push 0x4bffbc
push dword [esp + 0x104]
push dword [esp + 0x104]
call fcn.004367fa
add esp, 0xc
test byte [eax + 0x104], 0x20
jne 0x430c5c
test esi, esi
jne 0x43158d
mov eax, dword [esp]
mov ecx, dword [esp + 8]
mov dword [esp + 0xa0], ebx
mov edx, dword [eax + 8]
mov dword [esp + 0xa4], ecx
mov esi, dword [edx + 0x60]
lea eax, [edx + 0x4c]
mov dword [esp + 0x18], edx
mov dword [esp + 0x60], eax
test esi, esi
je 0x42f7a5
mov eax, dword [esp + 0x18]
shl esi, 4
mov edi, dword [eax + 0x58]
cmp dword [edi], 1
jne 0x42f79d
cmp dword [edi + 8], ecx
jne 0x42f79d
push ecx
push ebx
push dword [edi + 4]
call sub.msvcrt.dll_memcmp
mov ecx, dword [esp + 0x14]
add esp, 0xc
test eax, eax
je 0x42fb97
add edi, 0x10
add esi, 0xfffffff0
jne 0x42f77a
mov eax, dword [esp + 0x18]
mov esi, ebx
mov dword [esp + 0x24], esi
mov edx, dword [eax + 0x144]
mov ebx, dword [eax + 0x148]
mov eax, edx
or al, bl
jns 0x42f853
mov eax, dword [esp + 0x18]
mov dword [esp + 0xf4], ebx
lea ecx, [esp + 0xa0]
mov dword [esp + 0x104], edx
mov esi, dword [eax + 0x4c]
mov eax, dword [eax + 0x54]
imul ebx, eax, 0x11c
test eax, eax
mov dword [esp + 0x68], esi
lea eax, [esi + ebx]
mov dword [esp + 0x6c], eax
mov dword [esp + 0x9c], eax
mov dword [esp + 0x70], ecx
je 0x42f83d
lea edi, [ebx - 0x11c]
lea ecx, [esp + 0xb0]
lea edx, [esp + 0x70]
push esi
add esi, 0x11c
call fcn.0042a8fe
add esp, 4
cmp dword [esp + 0xb0], 0
jne 0x42fb51
mov eax, 0xfffffee4
add edi, eax
add ebx, eax
jne 0x42f80a
mov ecx, dword [esp + 8]
mov esi, dword [esp + 0x24]
mov edx, dword [esp + 0x104]
mov ebx, dword [esp + 0xf4]
or edx, ebx
mov dword [esp + 0x68], esi
mov dword [esp + 0x6c], ecx
bt edx, 8
jae 0x42f921
mov eax, dword [esp + 0x18]
lea ecx, [esp + 0x68]
mov edx, dword [eax + 0x64]
mov eax, dword [eax + 0x6c]
imul edi, eax, 0x16c
mov dword [esp + 0xf0], eax
mov dword [esp + 0x2c], edx
lea eax, [edx + edi]
lea ebx, [edi - 0x16c]
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], ecx
test edi, edi
je 0x42f910
lea esi, [edx + 0x16c]
mov dword [esp + 0xb0], esi
lea ecx, [esp + 0xb8]
call fcn.0042a872
mov ecx, edx
mov edx, 0xfffffe94
mov dword [esp + 0x18], ebx
add edi, edx
add ebx, edx
test eax, eax
mov edx, esi
je 0x42f89d
mov ebx, dword [esp + 0x18]
mov dword [esp + 0xf4], eax
mov dword [esp + 0x104], ecx
test ebx, ebx
je 0x42fcea
lea edi, [esi + 0x16c]
mov dword [esp + 0xb0], edi
lea ecx, [esp + 0xb8]
mov edx, esi
call fcn.0042a872
add ebx, 0xfffffe94
test eax, eax
mov esi, edi
je 0x42f8e1
mov ecx, dword [esp + 8]
mov edx, dword [esp + 0x2c]
mov eax, dword [esp + 0xf0]
jmp 0x42f92b
mov eax, dword [esp + 0x18]
mov edx, dword [eax + 0x64]
mov eax, dword [eax + 0x6c]
test eax, eax
je 0x42f9f7
imul eax, eax, 0x16c
add eax, edx
mov dword [esp + 0x18], eax
mov eax, dword [edx + 0x94]
mov esi, edx
test eax, eax
je 0x42f9aa
cmp dword [edx + 0x98], ecx
jne 0x42f96d
push ecx
push dword [esp + 0x28]
push eax
call sub.msvcrt.dll_memcmp
mov ecx, dword [esp + 0x14]
add esp, 0xc
test eax, eax
je 0x42fa6b
mov eax, esi
mov eax, dword [esi + 0x48]
mov edi, dword [esi + 0x40]
shl eax, 2
add edi, 4
lea ebx, [eax + eax*2]
test ebx, ebx
je 0x42f9e5
cmp dword [edi], ecx
jne 0x42f9a2
push ecx
push dword [esp + 0x28]
push dword [edi - 4]
call sub.msvcrt.dll_memcmp
mov ecx, dword [esp + 0x14]
add esp, 0xc
test eax, eax
je 0x42fa6b
add edi, 0xc
add ebx, 0xfffffff4
jmp 0x42f97e
mov eax, dword [edx + 0x48]
mov edi, dword [edx + 0x40]
shl eax, 2
add edi, 4
lea ebx, [eax + eax*2]
test ebx, ebx
je 0x42f9e5
cmp dword [edi], ecx
jne 0x42f9dd
push ecx
push dword [esp + 0x28]
push dword [edi - 4]
call sub.msvcrt.dll_memcmp
mov ecx, dword [esp + 0x14]
add esp, 0xc
test eax, eax
je 0x42fa6b
add edi, 0xc
add ebx, 0xfffffff4
jmp 0x42f9b9
mov edx, esi
add edx, 0x16c
cmp edx, dword [esp + 0x18]
jne 0x42f93f
mov ecx, dword [esp + 0x60]
mov edx, dword [esp + 0x28]
call fcn.00436828
test eax, eax
je 0x42fa1e
mov eax, dword [eax + 0x104]
mov ecx, 0x120
and eax, ecx
cmp eax, 0x20
je 0x430c58
mov eax, dword [esp + 0xa0]
mov esi, dword [esp + 0xa4]
mov dword [esp + 8], eax
mov ecx, esi
call fcn.00416d74
mov edi, eax
mov ebx, edx
push esi
push dword [esp + 0xc]
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov dword [esp + 0x170], 7
mov dword [esp + 0x174], edi
mov dword [esp + 0x178], ebx
mov dword [esp + 0x17c], esi
jmp 0x42faad
mov ebx, dword [esi + 0x20]
mov edi, dword [esi + 0x24]
mov ecx, edi
call fcn.00416d74
mov esi, eax
mov dword [esp + 8], edx
push edi
push ebx
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov eax, dword [esp + 8]
mov dword [esp + 0x170], 0
mov dword [esp + 0x174], esi
mov dword [esp + 0x178], eax
mov dword [esp + 0x17c], edi
movsd xmm1, qword [esp + 0xb8]
lea eax, [esp + 0x18c]
movsd xmm0, qword [esp + 0xb0]
movsd qword [eax - 4], xmm1
movsd xmm1, qword [esp + 0xc0]
movsd qword [eax - 0xc], xmm0
movsd qword [eax + 4], xmm1
mov edi, dword [esp + 0x1c]
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x170]
mov ecx, dword [esp + 0x174]
cmp eax, 9
mov dword [esp + 0x20], ecx
je 0x4315c9
mov eax, dword [eax*4 + 0x435120]
mov ebx, dword [esp + 0x178]
mov ecx, dword [esp + 0x17c]
add eax, dword [esp + 0x94]
jmp eax
mov ebx, dword [esp + 0xb8]
cmp esi, dword [esp + 0x9c]
mov dword [esp + 0x68], esi
je 0x42fbb5
lea ecx, [esp + 0xb0]
lea edx, [esp + 0x70]
push esi
call fcn.0042a8fe
add esp, 4
cmp dword [esp + 0xb0], 0
jne 0x42f83d
add esi, 0x11c
add edi, 0xfffffee4
jne 0x42fb65
jmp 0x42fbb5
mov eax, dword [esp + 0x18]
mov ecx, dword [edi + 0xc]
mov edx, dword [eax + 0x54]
cmp edx, ecx
jbe 0x433fdc
mov eax, dword [esp + 0x60]
imul ebx, ecx, 0x11c
add ebx, dword [eax]
mov edi, dword [esp + 0x1c]
mov esi, dword [esp + 0x14]
cmp dword [ebx + 8], 0
je 0x42fcb9
cmp dword [ebx + 0x10], 0
jne 0x42fcb9
cmp dword [esp + 0x2c], 0
mov dword [esp + 0x24], ebx
je 0x42fd30
mov ebx, dword [esp + 0x18]
lea esi, [esp + 0x108]
mov ecx, esi
mov edx, ebx
call fcn.00423eac
mov eax, dword [edi + 0x20]
mov ecx, dword [edi + 0x28]
lea ecx, [eax + ecx*8]
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x70], edi
mov dword [esp + 0x74], ebx
mov dword [esp + 0x78], esi
lea ecx, [esp + 0x68]
call fcn.0042877f
mov esi, eax
test eax, eax
je 0x42fd99
mov edi, edx
mov ecx, 4
call fcn.00425643
mov dword [eax], esi
mov dword [eax + 4], edi
mov dword [esp + 0x48], eax
mov dword [esp + 8], eax
xor edi, edi
mov dword [esp + 0x4c], edx
mov dword [esp + 0x50], 1
mov eax, dword [esp + 0x78]
movsd xmm0, qword [esp + 0x68]
movsd xmm1, qword [esp + 0x70]
inc edi
mov dword [esp + 0xc0], eax
movsd qword [esp + 0xb8], xmm1
movsd qword [esp + 0xb0], xmm0
lea ecx, [esp + 0xb0]
call fcn.0042877f
mov ebx, eax
test eax, eax
je 0x42fcfd
cmp edi, dword [esp + 0x4c]
mov esi, edx
jne 0x42fca7
mov edx, edi
lea ecx, [esp + 0x48]
push 1
call fcn.00428a8c
add esp, 4
mov eax, dword [esp + 0x48]
mov dword [esp + 8], eax
mov eax, dword [esp + 8]
mov dword [eax + edi*8], ebx
mov dword [eax + edi*8 + 4], esi
inc edi
mov dword [esp + 0x50], edi
jmp 0x42fc75
xor eax, eax
cmp dword [esp + 0x2c], 0
setne al
mov edx, dword [esp]
lea ecx, [esp + 0x170]
push eax
push edi
push ebx
push dword [esp + 0xfc]
push dword [esp + 0x3c]
push 1
call fcn.00436877
add esp, 0x18
jmp 0x42fd8b
mov edi, dword [esp + 0x104]
mov ebx, dword [esp + 0xf4]
jmp 0x42fa71
movsd xmm0, qword [esp + 0x48]
mov ebx, dword [esp + 0x50]
mov eax, dword [esp + 0x24]
movsd qword [esp + 0x30], xmm0
mov dword [esp + 0x38], ebx
mov edx, dword [esp + 0x34]
mov ecx, dword [eax + 0x3c]
mov esi, dword [eax + 0x40]
cmp ebx, edx
mov dword [esp + 8], ecx
je 0x42fdb9
jmp 0x42fdc6
xor eax, eax
mov dword [esp + 0xb0], 4
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], eax
sub esp, 0x1c
lea edx, [esp + 0xcc]
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x18], edi
mov dword [esp + 0x10], eax
mov dword [esp + 4], 2
mov dword [esp], 1
mov dword [esp + 0xc], edx
mov edx, dword [esp + 0x1c]
mov dword [esp + 8], ecx
lea ecx, [esp + 0x18c]
call fcn.00436b14
add esp, 0x1c
mov al, 1
mov dword [esp + 0x90], eax
jmp 0x42fae6
mov eax, dword [esp + 0x24]
xor edx, edx
mov dword [esp + 0x30], 4
mov dword [esp + 0x34], edx
mov dword [esp + 0x38], edx
mov ecx, dword [eax + 0x3c]
mov esi, dword [eax + 0x40]
mov dword [esp + 8], ecx
lea ecx, [esp + 0x30]
call fcn.0041e54f
mov ebx, dword [esp + 0x38]
mov edi, dword [esp + 0x30]
mov eax, dword [esp + 8]
mov dword [edi + ebx*8], eax
mov dword [edi + ebx*8 + 4], esi
inc ebx
mov dword [esp + 0x38], ebx
mov edx, dword [esp + 0x2c]
lea ecx, [esp + 0xb0]
push dword [esp + 0xf0]
call fcn.00498ea0
add esp, 4
mov eax, dword [esp + 0xb0]
mov ecx, dword [esp + 0xb8]
test eax, eax
mov dword [esp + 0x2c], ecx
je 0x42fe1b
mov ecx, dword [esp + 0xb4]
mov dword [esp + 0x18], eax
mov dword [esp + 8], ecx
jmp 0x42fe44
mov esi, dword [esp + 0xb4]
mov edi, ecx
call fcn.00416d74
mov dword [esp + 8], edx
push edi
push esi
mov dword [esp + 0x20], eax
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov edi, dword [esp + 0x30]
mov ebx, dword [esp + 0x38]
mov esi, dword [esp + 0x34]
xor eax, eax
mov dword [esp + 0x68], 1
mov dword [esp + 0x6c], eax
mov dword [esp + 0xcc], eax
mov dword [esp + 0xc0], 0x20
mov byte [esp + 0xd0], 3
mov dword [esp + 0xb0], eax
mov dword [esp + 0x70], eax
mov dword [esp + 0xb8], eax
lea eax, [esp + 0x68]
mov dword [esp + 0xc4], eax
mov dword [esp + 0xc8], 0x4be780
mov ecx, dword [esp + 0x24]
lea edx, [esp + 0xb0]
call fcn.004189dd
test al, al
jne 0x434236
mov eax, dword [esp + 0x70]
lea ecx, [esp + 0x18c]
movsd xmm0, qword [esp + 0x68]
mov edx, dword [esp + 0x2c]
mov dword [ecx + 8], eax
mov eax, dword [esp + 0x18]
movsd qword [ecx], xmm0
mov dword [esp + 0x174], eax
mov eax, dword [esp + 8]
mov dword [esp + 0x178], eax
mov dword [esp + 0x17c], edx
mov dword [esp + 0x170], 4
mov dword [esp + 0x180], edi
mov dword [esp + 0x184], esi
mov dword [esp + 0x188], ebx
lea ecx, [esp + 0x108]
call fcn.004241bd
mov al, 1
mov dword [esp + 0x90], eax
jmp 0x42fade
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0x28]
mov dword [esp + 0x2c], ebx
mov dword [esp + 0x14], esi
inc eax
cmp eax, dword [esp + 0x44]
mov dword [esp + 8], eax
jne 0x42ffad
mov esi, dword [ebx + 0x54]
test esi, esi
je 0x42ffad
mov ecx, dword [ebx + 0x4c]
imul edi, esi, 0x11c
lea edx, [ecx + 8]
cmp dword [edx + 0x100], 0
jne 0x42ff9b
cmp dword [edx + 0x2c], 0x110000
jne 0x42ff9b
cmp dword [edx], 0
mov ebx, dword [edx + 4]
setne al
cmp ebx, dword [edx + 8]
setne ah
cmp ebx, 2
setae bl
or bl, ah
test al, bl
jne 0x42ff87
cmp byte [edx + 0x110], 1
jne 0x42ff9b
mov ebx, dword [edx + 0xc]
test ebx, ebx
je 0x42ff91
mov ebx, dword [edx + 0x10]
cmp dword [esp + 0x44], ebx
jne 0x4300b3
add edx, 0x11c
add edi, 0xfffffee4
jne 0x42ff51
mov edi, dword [esp + 0x1c]
xor ebx, ebx
mov ecx, dword [esp + 0x2c]
add ecx, 0x4c
mov edx, dword [esp + 0x28]
call fcn.00436828
test eax, eax
je 0x42ffcf
cmp dword [eax + 0x110], 0
setne dl
jmp 0x42ffd1
mov dl, 2
mov eax, dword [esp]
mov eax, dword [eax + 8]
mov ecx, dword [eax + 0x144]
or ecx, dword [eax + 0x148]
and ecx, 0x10
shr ecx, 4
test bl, bl
je 0x42fff7
test dl, 1
je 0x43000f
jmp 0x430086
or dl, byte [esp + 0x10]
mov ebx, dword [esp + 8]
test dl, 1
sete dl
cmp ebx, dword [esp + 0x44]
jne 0x430086
and dl, cl
je 0x430086
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp + 8]
cmp ecx, dword [edx + 8]
jae 0x4301d1
mov edx, dword [eax + 0x54]
test edx, edx
je 0x4301d1
mov esi, dword [ebp + 8]
shl ecx, 4
mov esi, dword [esi]
mov edi, dword [esi + ecx]
mov dword [esp + 0x24], edi
mov edi, dword [esi + ecx + 8]
mov ecx, dword [eax + 0x4c]
mov esi, dword [esp + 0x28]
imul eax, edx, 0x11c
mov ebx, ecx
cmp dword [ebx + 0x108], 0
jne 0x43006c
cmp dword [ebx + 0x34], 0x110000
jne 0x43006c
cmp dword [ebx + 0x14], 0
je 0x43006c
cmp dword [ebx + 0x18], esi
je 0x4300ec
add ebx, 0x11c
add eax, 0xfffffee4
jne 0x43004b
mov esi, dword [esp + 8]
mov edi, dword [esp + 0x1c]
jmp 0x4301d5
test byte [esp + 0x10], 1
je 0x4300aa
mov eax, dword [esp + 0x44]
mov esi, dword [esp + 0x28]
test cl, cl
cmovne esi, eax
cmp dword [esp + 0x114], 0
cmovne esi, eax
jmp 0x4301d5
mov esi, dword [esp + 0x28]
jmp 0x4301d5
xor edx, edx
mov edi, 0x110000
mov eax, dword [ecx + 0x34]
xor eax, edi
or eax, dword [ecx + 0x108]
cmove edx, ecx
add ecx, 0x11c
dec esi
jne 0x4300ba
mov edi, dword [esp + 0x1c]
test edx, edx
je 0x430791
test byte [edx + 0x105], 1
sete bl
jmp 0x430793
push 0x4bff9c
push dword [ebx + 0x40]
push dword [ebx + 0x3c]
call fcn.004367fa
add esp, 0xc
test byte [eax + 0x104], 0x20
jne 0x430165
mov eax, dword [esp]
mov eax, dword [eax + 8]
mov ecx, dword [eax + 0x4c]
mov edx, dword [eax + 0x54]
push 0x4bffac
push dword [ebx + 0x40]
push dword [ebx + 0x3c]
call fcn.004367fa
add esp, 0xc
test byte [eax + 0x104], 0x40
je 0x43013f
mov ecx, dword [esp + 0x24]
mov edx, edi
call fcn.00444361
test al, al
jne 0x430165
mov ebx, dword [esp + 0x24]
mov edx, edi
mov ecx, ebx
call fcn.00444475
test al, al
jne 0x430079
mov ecx, ebx
mov edx, edi
call fcn.00444511
test al, al
jne 0x430079
mov ebx, dword [esp + 0x24]
lea ecx, [esp + 0x170]
mov edx, ebx
push edi
call fcn.00448bc0
add esp, 4
mov eax, dword [esp + 0x170]
test eax, eax
jne 0x430194
mov ebx, dword [esp + 0x174]
mov edi, dword [esp + 0x178]
mov dword [esp + 0x174], ebx
mov dword [esp + 0x178], edi
mov dword [esp + 0x170], eax
xor eax, eax
cmp byte [esp + 0x90], 0
setne al
mov ecx, dword [esp]
lea edx, [esp + 0x170]
push eax
call fcn.00435902
add esp, 4
mov edi, dword [esp + 0x1c]
test eax, eax
je 0x4301d5
mov esi, dword [esp + 8]
mov eax, dword [esp]
mov ecx, dword [eax + 8]
add ecx, 0x4c
mov edx, esi
mov dword [esp + 0x28], esi
call fcn.00436828
test eax, eax
je 0x431643
mov esi, eax
mov eax, dword [eax + 0x104]
test byte [esp + 0x10], 1
jne 0x43020e
mov ecx, eax
and ecx, 0x100
jne 0x431763
bt eax, 9
mov eax, dword [esp + 0x10]
mov ecx, 1
movzx eax, al
cmovb eax, ecx
cmp dword [edi], 2
mov dword [esp + 0x10], eax
je 0x430249
mov eax, dword [edi + 0xc]
cmp eax, dword [esi + 0x40]
jne 0x430249
push eax
push dword [esi + 0x3c]
push dword [edi + 8]
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x4303e3
mov ecx, dword [esp]
mov edx, edi
call fcn.00438138
test eax, eax
jne 0x43317b
mov eax, dword [esi + 0x110]
test eax, eax
je 0x43028a
mov ecx, dword [esp + 0xc]
cmp ecx, dword [esi + 0x114]
jne 0x43028a
push dword [esp + 0xc]
push eax
push dword [esp + 0xc]
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x430383
mov eax, dword [edi]
mov dword [esp + 0x170], 9
cmp eax, 2
jne 0x4302bd
mov ecx, dword [esi + 0x3c]
mov edx, dword [esi + 0x40]
xor eax, eax
mov dword [edi], eax
mov dword [edi + 8], ecx
mov dword [edi + 0xc], edx
mov dword [edi + 0x10], 4
mov dword [edi + 0x14], eax
mov dword [edi + 0x18], eax
mov byte [edi + 0x1c], 2
test byte [esp + 0x10], 1
je 0x4302d4
test eax, eax
jne 0x4302d4
mov eax, dword [edi + 0x18]
mov dword [edi], 1
mov dword [edi + 4], eax
mov edx, dword [esp + 4]
lea ecx, [esp + 0xb0]
push dword [esp + 0xc]
call fcn.0049c030
add esp, 4
mov edx, dword [esp + 0xb8]
mov eax, dword [esp + 0xb0]
mov ecx, dword [esp + 0xbc]
mov ebx, dword [esp + 0xb4]
mov dword [esp + 0x68], edx
mov edx, dword [edi + 0x18]
mov dword [esp + 4], eax
mov dword [esp + 0x6c], ecx
cmp edx, dword [edi + 0x14]
jne 0x430330
mov ecx, dword [esp + 0x11c]
call fcn.0042b68a
mov edi, dword [esp + 0x1c]
mov edx, dword [edi + 0x18]
jmp 0x430334
mov edi, dword [esp + 0x1c]
mov eax, dword [edi + 0x10]
mov ecx, dword [esp + 4]
shl edx, 4
mov dword [eax + edx], ecx
mov dword [eax + edx + 4], ebx
movsd xmm0, qword [esp + 0x68]
movsd qword [eax + edx + 8], xmm0
inc dword [edi + 0x18]
mov ecx, dword [esi + 0xc]
cmp ecx, dword [esi + 0x10]
setne al
cmp ecx, 2
setae cl
cmp dword [esi + 8], 0
je 0x43036d
or cl, al
jne 0x430376
cmp byte [esi + 0x118], 1
jne 0x43039a
mov edx, dword [esi + 0x3c]
mov ecx, dword [esi + 0x40]
mov eax, 2
jmp 0x4303ae
mov dword [esp + 0x170], 2
lea ecx, [esp + 0x170]
call fcn.004391a6
inc dword [esp + 0x28]
mov ecx, dword [esp + 0x140]
mov edx, dword [esp + 0x13c]
xor eax, eax
mov esi, dword [esp + 0x14]
mov dword [esp + 0xf8], eax
mov al, 1
mov dword [esp + 0xfc], edx
mov dword [esp + 0x13c], edx
mov dword [esp + 0x140], ecx
mov dword [esp + 0x100], ecx
mov dword [esp + 0x90], eax
jmp 0x42f48b
mov ecx, dword [esi + 0xc]
cmp ecx, dword [esi + 0x10]
setne al
cmp ecx, 2
setae cl
cmp dword [esi + 8], 0
je 0x430249
or cl, al
jne 0x43025b
jmp 0x430249
test ecx, ecx
je 0x430c60
mov eax, dword [esp + 4]
cmp byte [eax], 0x2d
jne 0x430c60
mov edi, ecx
dec edi
je 0x430e94
mov eax, dword [esp + 4]
lea ebx, [eax + 1]
cmp byte [ebx], 0x2d
je 0x430e94
lea ecx, [esp + 0xb0]
mov edx, ebx
push edi
call fcn.00448bc0
add esp, 4
cmp dword [esp + 0xb0], 0
je 0x43049a
mov esi, dword [esp + 0xb4]
mov eax, edi
sub eax, esi
mov dword [esp + 0x2c], eax
jb 0x434291
lea ecx, [esp + 0x170]
mov edx, ebx
push esi
call fcn.00448bc0
add esp, 4
cmp dword [esp + 0x170], 0
jne 0x43425f
mov ecx, dword [esp + 0x174]
mov edx, dword [esp + 0x178]
add esi, ebx
jmp 0x4304aa
mov ecx, dword [esp + 0xb4]
mov edx, dword [esp + 0xb8]
xor esi, esi
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x60], edx
add edx, ecx
mov dword [esp + 0x2ec], ebx
mov dword [esp + 0x2f0], edi
mov dword [esp + 0x2f4], ecx
mov dword [esp + 0xf0], ebx
mov dword [esp + 0x24], esi
mov dword [esp + 0x18], ecx
mov dword [esp + 0x2f8], edx
mov dword [esp + 0x2fc], 0
mov dword [esp + 0x300], esi
mov dword [esp + 0x104], edx
mov dword [esp + 0x304], eax
mov eax, dword [esp + 0xf8]
cmp eax, 1
je 0x430581
cmp eax, 2
jne 0x4305fa
mov eax, dword [esp]
mov ebx, dword [esp + 0xfc]
mov esi, dword [esp + 0x100]
mov eax, dword [eax + 8]
mov ecx, dword [eax + 0x4c]
mov edx, dword [eax + 0x54]
mov dword [esp + 8], eax
push 0x4bffcc
push esi
push ebx
call fcn.004367fa
add esp, 0xc
test byte [eax + 0x104], 0x20
jne 0x430711
mov eax, dword [esp + 8]
mov ecx, dword [eax + 0x4c]
mov edx, dword [eax + 0x54]
push 0x4bffdc
push esi
push ebx
call fcn.004367fa
add esp, 0xc
test byte [eax + 0x104], 0x40
je 0x430604
cmp dword [esp + 0x24], 0
jne 0x430604
jmp 0x4305e4
mov eax, dword [esp]
mov ebx, dword [esp + 0xfc]
mov esi, dword [esp + 0x100]
mov eax, dword [eax + 8]
mov ecx, dword [eax + 0x4c]
mov edx, dword [eax + 0x54]
mov dword [esp + 8], eax
push 0x4bffcc
push esi
push ebx
call fcn.004367fa
add esp, 0xc
test byte [eax + 0x104], 0x20
jne 0x430711
mov eax, dword [esp + 8]
mov ecx, dword [eax + 0x4c]
mov edx, dword [eax + 0x54]
push 0x4bffdc
push esi
push ebx
call fcn.004367fa
add esp, 0xc
test byte [eax + 0x104], 0x40
je 0x430604
cmp dword [esp + 0x24], 0
jne 0x430604
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x60]
call fcn.0044439f
test al, al
je 0x430604
jmp 0x430711
mov eax, dword [esp]
mov eax, dword [eax + 8]
mov dword [esp + 8], eax
mov eax, dword [esp + 8]
lea ebx, [eax + 0x4c]
mov edx, dword [esp + 0x28]
mov ecx, ebx
call fcn.00436828
test eax, eax
je 0x43063f
test byte [eax + 0x104], 0x40
je 0x43063f
cmp dword [esp + 0x24], 0
jne 0x43063f
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x60]
call fcn.0044439f
test al, al
jne 0x430711
mov edx, dword [esp + 0x28]
mov ecx, ebx
call fcn.00436828
test eax, eax
je 0x430746
mov eax, dword [eax + 0x104]
mov ecx, 0x120
and eax, ecx
cmp eax, 0x20
jne 0x430746
mov eax, dword [esp + 0xf0]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x104]
mov dword [esp + 0x170], eax
mov dword [esp + 0x174], edi
mov dword [esp + 0x178], ecx
mov ecx, dword [esp + 0x24]
mov dword [esp + 0x17c], edx
mov edx, dword [esp + 0x2c]
mov dword [esp + 0x180], 0
mov dword [esp + 0x184], ecx
mov ecx, dword [esp + 8]
mov dword [esp + 0x188], edx
mov esi, dword [ecx + 0x60]
mov edi, dword [ecx + 0x58]
mov ebx, esi
add edi, 4
shl ebx, 4
lea ecx, [esp + 0xb0]
lea edx, [esp + 0x170]
call fcn.00444531
cmp dword [esp + 0xb0], 0
je 0x430746
cmp dword [esp + 0xb4], 0
jne 0x430711
test esi, esi
je 0x430711
mov eax, dword [esp + 0xb8]
mov ecx, ebx
mov edx, edi
cmp dword [edx - 4], 0
jne 0x430709
cmp dword [edx], eax
je 0x4306c9
add edx, 0x10
add ecx, 0xfffffff0
jne 0x4306ff
mov eax, dword [esp + 0x64]
mov esi, dword [esp + 0x14]
mov edi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x98]
mov dword [esp + 0x68], 5
mov dword [esp + 0x6c], eax
mov dword [esp + 0x70], esi
mov dword [esp + 0x74], ecx
lea ecx, [esp + 0x68]
call fcn.004391a6
jmp 0x430c60
mov eax, dword [esp + 0x144]
mov edi, dword [esp + 0x1c]
mov dword [esp + 0xb0], 8
mov esi, dword [eax]
mov dword [eax], 0
inc esi
dec esi
je 0x4307b0
lea ecx, [esp + 0x170]
lea edx, [esp + 0x2ec]
call fcn.00444531
cmp dword [esp + 0x170], 0
je 0x4307b0
cmp dword [esp + 0x174], 0
je 0x430765
jmp 0x4307b0
mov bl, 2
and bl, 1
jmp 0x42ffaf
lea ecx, [esp + 0x170]
call fcn.004391a6
mov al, 1
mov dword [esp + 0x90], eax
lea ecx, [esp + 0x120]
lea edx, [esp + 0x2ec]
call fcn.00444531
cmp dword [esp + 0x120], 0
je 0x430e9d
mov edx, dword [esp + 0x124]
mov eax, dword [esp + 0x128]
test edx, edx
jne 0x430ef1
mov ecx, dword [esp]
mov dword [esp + 0x158], eax
mov esi, dword [ecx + 8]
mov ecx, dword [esi + 0x60]
test ecx, ecx
je 0x430a53
mov edx, dword [esi + 0x58]
shl ecx, 4
cmp dword [edx], 0
jne 0x43080f
cmp dword [edx + 4], eax
je 0x43081c
add edx, 0x10
add ecx, 0xfffffff0
jne 0x430805
jmp 0x430a53
mov ecx, dword [edx + 0xc]
mov edx, dword [esi + 0x54]
cmp edx, ecx
jbe 0x4340a3
mov eax, dword [esi + 0x4c]
imul ecx, ecx, 0x11c
cmp dword [eax + ecx + 8], 0
lea edx, [eax + ecx]
je 0x4308d2
cmp dword [eax + ecx + 0x10], 0
jne 0x4308d2
xor eax, eax
mov dword [esp + 0x108], 4
mov dword [esp + 0x10c], eax
mov dword [esp + 0x110], eax
sub esp, 0x1c
mov dword [esp + 8], edx
mov edx, dword [esp + 0x1c]
lea ecx, [esp + 0x124]
mov dword [esp + 0x18], edi
mov dword [esp + 0x10], eax
mov dword [esp], eax
mov dword [esp + 4], 2
mov dword [esp + 0xc], ecx
lea ecx, [esp + 0x18c]
call fcn.00436b14
add esp, 0x1c
cmp dword [esp + 0x170], 9
je 0x430fa3
lea edi, [esp + 0xb0]
mov ecx, edi
call fcn.004391a6
mov ecx, 0xa
lea esi, [esp + 0x170]
rep movsd dword es:[edi], dword [esi]
mov edi, dword [esp + 0x1c]
jmp 0x4307a7
mov ebx, dword [esp + 0x2f4]
mov ecx, dword [esp + 0x300]
mov esi, dword [esp + 0x304]
mov dword [esp + 8], edx
cmp ebx, dword [esp + 0x2f8]
je 0x430981
mov eax, dword [esp + 0x2fc]
mov edx, dword [esp + 0x2ec]
mov edi, dword [esp + 0x2f0]
mov dword [esp + 0x24], eax
movzx eax, byte [ebx]
test al, al
jns 0x43098d
cmp al, 0xe0
jb 0x43098d
cmp al, 0xf0
jb 0x43098d
mov dword [esp + 0x2c], eax
movzx eax, byte [ebx + 2]
mov dword [esp + 0xf0], edx
movzx edx, byte [ebx + 1]
movzx ebx, byte [ebx + 3]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 0x60], edx
and dword [esp + 0x60], 0x3f
and dword [esp + 0x18], 0x3f
shl dword [esp + 0x18], 6
and ebx, 0x3f
mov edx, dword [esp + 0xf0]
and eax, 7
shl eax, 0x12
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x60]
shl eax, 0xc
add dword [esp + 0x18], eax
add ebx, dword [esp + 0x18]
add ebx, dword [esp + 0x2c]
cmp ebx, 0x110000
jne 0x43098d
test ecx, ecx
jne 0x43099f
xor edi, edi
xor esi, esi
xor eax, eax
jmp 0x4309b9
mov eax, dword [esp + 0x24]
sub edi, eax
jb 0x434331
add edx, eax
mov esi, edi
mov ecx, edx
xor eax, eax
test esi, esi
mov edi, ecx
cmove edi, esi
je 0x4309b7
cmp byte [ecx], 0x3d
jne 0x4309b9
inc ecx
lea edx, [esi - 1]
mov eax, ecx
jmp 0x4309b9
xor esi, esi
xor ebx, ebx
test eax, eax
cmovne edi, eax
setne bl
cmovne esi, edx
mov edx, dword [esp]
lea ecx, [esp + 0x170]
push ebx
mov eax, dword [esp + 0x20]
push eax
push dword [esp + 0x10]
push esi
push edi
mov edi, eax
push 0
call fcn.00436877
add esp, 0x18
mov ebx, dword [esp + 0x170]
cmp ebx, 9
je 0x430fa3
cmp dword [esp + 0x170], 3
je 0x43079b
lea ecx, [esp + 0x18c]
mov eax, dword [esp + 0x174]
mov esi, dword [esp + 0x178]
mov edx, dword [esp + 0x17c]
movsd xmm1, qword [ecx - 4]
movsd xmm0, qword [ecx - 0xc]
mov dword [esp + 0x64], eax
mov dword [esp + 0x98], edx
movsd qword [esp + 0x50], xmm1
movsd xmm1, qword [ecx + 4]
movsd qword [esp + 0x48], xmm0
movsd qword [esp + 0x58], xmm1
jmp 0x430fb7
mov edx, dword [esi + 0x6c]
test edx, edx
je 0x430aa0
mov ecx, dword [esi + 0x64]
imul edx, edx, 0x16c
add edx, ecx
mov esi, dword [ecx + 0x1c]
cmp esi, 0x110000
je 0x430a78
cmp esi, eax
je 0x430b23
mov edi, dword [ecx + 0x3c]
mov ebx, dword [ecx + 0x34]
lea esi, [ecx + 0x16c]
shl edi, 3
test edi, edi
je 0x430a9a
add edi, 0xfffffff8
cmp dword [ebx], eax
lea ebx, [ebx + 8]
jne 0x430a87
jmp 0x430b23
cmp esi, edx
mov ecx, esi
jne 0x430a65
lea eax, [esp + 0x158]
lea ecx, [esp + 0xa0]
mov dword [esp + 0x170], 0x4c6e74
mov dword [esp + 0xa0], eax
xor eax, eax
mov dword [esp + 0xa4], fcn.0044b020
inc eax
mov dword [esp + 0x174], eax
mov dword [esp + 0x180], 0
mov dword [esp + 0x178], ecx
mov dword [esp + 0x17c], eax
lea ecx, [esp + 0x30]
lea edx, [esp + 0x170]
call fcn.00413860
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x38]
mov esi, dword [esp + 0x34]
mov edi, dword [esp + 0x1c]
mov ebx, 7
mov dword [esp + 0x64], eax
mov dword [esp + 0x98], ecx
jmp 0x430bba
mov edi, dword [ecx + 0x20]
mov esi, dword [ecx + 0x24]
mov ecx, dword [esp]
mov edx, dword [esp + 0x1c]
call fcn.00438138
test eax, eax
je 0x430b4c
mov edi, dword [esp + 0x1c]
mov esi, dword [esp + 0x14]
mov dword [esp + 0x64], eax
mov ebx, 9
jmp 0x430bba
mov eax, dword [esp + 0x118]
inc dword [eax]
mov ecx, esi
call fcn.00416d74
mov dword [esp + 0x14], edx
push esi
push edi
mov dword [esp + 0x6c], eax
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov eax, dword [esp]
cmp dword [eax], 0
jne 0x430b86
mov ecx, dword [esp]
mov eax, dword [ecx + 0xc]
mov dword [ecx], 1
mov dword [ecx + 4], eax
xor ebx, ebx
cmp dword [esp + 0x300], 0
mov edi, dword [esp + 0x1c]
jne 0x430baf
mov eax, dword [esp + 0x2f4]
cmp dword [esp + 0x2f8], eax
jne 0x430baf
mov eax, dword [esp]
mov dword [eax], 0
mov dword [esp + 0x98], esi
mov esi, dword [esp + 0x14]
lea ecx, [esp + 0xb0]
call fcn.004391a6
cmp ebx, 9
je 0x433ac2
mov ecx, ebx
movsd xmm0, qword [esp + 0x58]
movsd xmm2, qword [esp + 0x48]
movsd xmm1, qword [esp + 0x50]
lea eax, [esp + 0x70]
mov edx, dword [ecx*4 + 0x435144]
movsd qword [eax + 0x18], xmm0
movsd qword [eax + 0x10], xmm1
movsd qword [eax + 8], xmm2
mov dword [esp + 0x68], ebx
mov ebx, dword [esp + 0x64]
mov eax, dword [esp + 0x98]
add edx, dword [esp + 0x94]
mov dword [esp + 0x6c], ebx
mov dword [esp + 0x74], eax
mov dword [esp + 0x70], esi
jmp edx
mov edi, dword [esp + 0x1c]
mov esi, dword [esp + 0x14]
mov eax, dword [esp]
cmp dword [esp + 0xf8], 1
mov ebx, dword [eax + 8]
jne 0x42ff27
mov ecx, dword [ebx + 0x4c]
mov edx, dword [ebx + 0x54]
mov edi, dword [esp + 0xfc]
mov ebx, dword [esp + 0x100]
mov dword [esp + 0x14], esi
push 0x4bff4c
push ebx
push edi
call fcn.004367fa
add esp, 0xc
mov esi, eax
mov eax, dword [eax + 0x110]
test eax, eax
je 0x430ccc
mov ecx, dword [esp + 0xc]
cmp ecx, dword [esi + 0x114]
jne 0x430ccc
push dword [esp + 0xc]
push eax
push dword [esp + 0xc]
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x430e56
mov ecx, edi
mov edi, dword [esp + 0x1c]
mov dword [esp + 0x170], 9
cmp dword [edi], 2
jne 0x430cfd
xor eax, eax
mov dword [edi], eax
mov dword [edi + 8], ecx
mov dword [edi + 0xc], ebx
mov dword [edi + 0x10], 4
mov dword [edi + 0x14], eax
mov dword [edi + 0x18], eax
mov byte [edi + 0x1c], 3
mov edx, dword [esp + 4]
lea ecx, [esp + 0x68]
push dword [esp + 0xc]
call fcn.0049c030
add esp, 4
mov edx, dword [esp + 0x70]
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x74]
mov ebx, dword [esp + 0x68]
mov dword [esp + 0x48], edx
mov edx, dword [edi + 0x18]
mov dword [esp + 4], eax
mov dword [esp + 0x4c], ecx
cmp edx, dword [edi + 0x14]
jne 0x430d4a
mov ecx, dword [esp + 0x11c]
call fcn.0042b68a
mov ecx, dword [esp + 0x1c]
mov edx, dword [ecx + 0x18]
jmp 0x430d4e
mov ecx, dword [esp + 0x1c]
mov edi, dword [esp + 4]
mov eax, dword [ecx + 0x10]
shl edx, 4
mov dword [eax + edx], ebx
mov dword [eax + edx + 4], edi
movsd xmm0, qword [esp + 0x48]
movsd qword [eax + edx + 8], xmm0
mov edi, dword [ecx + 0x18]
inc edi
mov dword [ecx + 0x18], edi
cmp dword [ecx], 2
je 0x430d9a
mov eax, dword [esp + 0x1c]
mov eax, dword [eax + 0xc]
cmp eax, dword [esi + 0x40]
jne 0x430d9a
push eax
push dword [esi + 0x3c]
mov eax, dword [esp + 0x24]
push dword [eax + 8]
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x430d9c
xor edi, edi
cmp dword [esi + 8], 0
je 0x43417a
cmp dword [esi + 0x10], edi
mov edx, dword [esp + 0x154]
mov eax, 2
jbe 0x430dce
mov eax, dword [esi + 0x3c]
mov ecx, dword [esi + 0x40]
mov dword [esp + 0xb4], eax
xor eax, eax
mov dword [esp + 0xb8], ecx
inc eax
mov edi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x138]
mov dword [esp + 0xb0], eax
mov esi, dword [esp + 0x14]
cmp eax, 1
je 0x430e1c
cmp eax, 2
jne 0x4341da
mov dword [esp + 0xf8], 0
mov dword [esp + 0xfc], edx
mov dword [esp + 0x100], ecx
lea ecx, [esp + 0xb0]
call fcn.004391a6
jmp 0x42f48b
mov ecx, dword [esp + 0xb4]
mov eax, dword [esp + 0xb8]
mov dword [esp + 0xf8], 1
mov dword [esp + 0xfc], ecx
mov dword [esp + 0x154], ecx
mov dword [esp + 0x138], eax
mov dword [esp + 0x100], eax
jmp 0x42f48b
mov dword [esp + 0x170], 2
mov ecx, 0xa
lea edi, [esp + 0xb0]
lea esi, [esp + 0x170]
rep movsd dword es:[edi], dword [esi]
mov eax, dword [esp + 0xb0]
mov edi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x138]
mov edx, dword [esp + 0x154]
jmp 0x430de0
mov edi, dword [esp + 0x1c]
jmp 0x430c60
lea ecx, [esp + 0xb8]
mov eax, dword [esp + 0xb4]
mov edx, dword [esp + 0xbc]
mov ebx, dword [esp + 0xb0]
mov esi, dword [esp + 0xb8]
movsd xmm1, qword [ecx + 0x10]
movsd xmm0, qword [ecx + 8]
mov dword [esp + 0x64], eax
mov dword [esp + 0x98], edx
movsd qword [esp + 0x50], xmm1
movsd xmm1, qword [ecx + 0x18]
movsd qword [esp + 0x48], xmm0
movsd qword [esp + 0x58], xmm1
jmp 0x430bc6
lea ecx, [esp + 0xa0]
push eax
call fcn.00498ea0
add esp, 4
xor ecx, ecx
lea eax, [esp + 0xa0]
mov dword [esp + 0x170], 0x4c6e74
mov dword [esp + 0x148], eax
inc ecx
lea eax, [esp + 0x148]
mov dword [esp + 0x14c], 0x42b851
mov dword [esp + 0x174], ecx
mov dword [esp + 0x180], 0
mov dword [esp + 0x178], eax
mov dword [esp + 0x17c], ecx
lea ecx, [esp + 0x12c]
lea edx, [esp + 0x170]
call fcn.00413860
mov eax, dword [esp + 0xa0]
mov edi, dword [esp + 0x1c]
test eax, eax
je 0x430f89
cmp dword [esp + 0xa4], 0
je 0x430f89
push eax
push 0
push dword [0x4e4100]
call sub.kernel32.dll_HeapFree
mov eax, dword [esp + 0x12c]
mov ecx, dword [esp + 0x134]
mov esi, dword [esp + 0x130]
jmp 0x430b0e
mov eax, dword [esp + 0x174]
mov esi, dword [esp + 0x14]
mov ebx, 9
mov dword [esp + 0x64], eax
mov al, 1
mov dword [esp + 0x90], eax
jmp 0x430bba
inc esi
mov eax, 0xffffffff
mov bl, 1
mov dword [esp + 0x20], 0
cmove esi, eax
mov dword [ebp + 0xc], esi
mov ecx, dword [esp]
mov edx, edi
call fcn.00438138
mov esi, eax
test eax, eax
jne 0x431561
mov ecx, dword [esp]
mov edx, dword [esp + 0x1c]
call fcn.0043947f
mov esi, eax
test eax, eax
jne 0x431561
mov eax, dword [esp]
mov esi, dword [eax + 8]
lea ecx, [esp + 0xb0]
mov edx, esi
call fcn.00423eac
movsd xmm0, qword [esp + 0xb0]
mov eax, dword [esp + 0xb8]
lea edi, [esp + 0x174]
mov dword [edi - 4], esi
movsd qword [edi], xmm0
mov dword [edi + 8], eax
lea edx, [esp + 0xf8]
lea ecx, [esp + 0x170]
push dword [esp + 0x1c]
call fcn.00439767
add esp, 4
cmp dword [esp + 0x44], 0
mov esi, eax
sete al
or bl, al
jne 0x431073
push dword [esp + 0x20]
push 0
push dword [0x4e4100]
call sub.kernel32.dll_HeapFree
mov ecx, edi
call fcn.004241bd
jmp 0x43317d
cmp edx, 4
jne 0x43109a
cmp dword [edi], 0x706c6568
jne 0x43109a
or eax, dword [esp + 8]
bt eax, 0x14
jae 0x4315d2
mov dword [esp + 0x20], 0
mov ecx, edx
mov ebx, edx
call fcn.00416d74
mov dword [esp + 4], edx
mov esi, eax
mov dword [esp + 0x28], ebx
push ebx
push edi
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov eax, dword [esp + 4]
xor ecx, ecx
mov dword [esp + 0x44], eax
test esi, esi
mov dword [esp + 0x20], esi
sete bl
je 0x43116a
mov eax, dword [esp]
mov dword [esp + 8], ecx
mov esi, dword [eax + 8]
mov eax, dword [esi + 0x144]
or eax, dword [esi + 0x148]
bt eax, 0xd
jae 0x431173
cmp byte [esp + 0x90], 0
je 0x431173
mov edx, dword [esp + 0x20]
lea ecx, [esp + 0x30]
push dword [esp + 0x28]
call fcn.00413ca0
add esp, 4
mov eax, dword [esp + 0x1c]
mov ebx, dword [eax + 0x20]
mov edi, dword [eax + 0x28]
mov eax, dword [esp]
mov eax, dword [eax + 8]
mov dword [esp + 0xc], eax
mov ecx, edi
call fcn.0041c61d
cmp edx, edi
mov dword [esp + 0x48], eax
mov dword [esp + 0x4c], edx
mov dword [esp + 0x50], 0
mov dword [esp + 0x10], esi
jae 0x431415
xor edx, edx
lea ecx, [esp + 0x48]
push edi
call fcn.004250cd
add esp, 4
mov ecx, dword [esp + 0x50]
mov eax, dword [esp + 0x48]
mov dword [esp + 4], ecx
jmp 0x431425
mov edi, dword [esp + 0x1c]
jmp 0x430fdb
mov eax, dword [esi + 0x6c]
mov byte [esp + 0x14], bl
test eax, eax
je 0x431204
mov ebx, dword [esi + 0x64]
imul eax, eax, 0x16c
add eax, ebx
mov dword [esp + 0x10], eax
mov ecx, dword [ebx + 0x24]
mov eax, dword [esp + 0x28]
cmp eax, ecx
mov dword [esp + 0xc], ecx
jne 0x4311b5
mov esi, dword [ebx + 0x20]
push eax
push esi
push dword [esp + 0x28]
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x431223
lea eax, [ebx + 0x16c]
mov esi, dword [ebx + 0x28]
mov dword [esp + 4], eax
mov eax, dword [ebx + 0x30]
add esi, 4
shl eax, 2
lea edi, [eax + eax*2]
mov eax, dword [esp + 0x28]
test edi, edi
je 0x4311fa
cmp eax, dword [esi]
jne 0x4311f2
push eax
push dword [esi - 4]
push dword [esp + 0x28]
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
mov eax, dword [esp + 0x28]
je 0x431220
add esi, 0xc
add edi, 0xfffffff4
jmp 0x4311d2
mov ebx, dword [esp + 4]
cmp ebx, dword [esp + 0x10]
jne 0x431191
mov edx, 0x63
mov ecx, str.Fatal_internal_error._Please_consider_filing_a_bug_report_at_https:__github.com_clap_rs_clap_issues_home_kevin_.cargo_registry_src_index.crates.io_6f17d22bba15001f_clap_builder_4.5.2_src_builder_arg.rs
push 0x4bff6c
call fcn.004493b0
add esp, 4
jmp 0x434379
mov esi, dword [ebx + 0x20]
mov ebx, dword [esp + 0xc]
mov ecx, ebx
call fcn.00416d74
mov dword [esp + 4], edx
mov edi, eax
push ebx
push esi
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov eax, dword [esp]
mov esi, dword [ebp + 0xc]
mov ecx, dword [eax + 8]
mov eax, ebx
mov ebx, dword [ecx + 0x144]
or ebx, dword [ecx + 0x148]
mov edx, edi
mov dword [esp + 0x10], edi
push eax
call fcn.00436009
add esp, 4
mov edi, eax
test eax, eax
je 0x4313f0
xor eax, eax
cmp byte [esp + 8], 0
mov dword [esp + 0xd0], 4
mov dword [esp + 0x178], edi
mov dword [esp + 0xd4], eax
mov dword [esp + 0xd8], eax
mov dword [esp + 0xdc], 8
mov dword [esp + 0xe0], eax
mov dword [esp + 0xe4], eax
mov dword [esp + 0xe8], eax
mov dword [esp + 0x17c], eax
mov dword [esp + 0x170], eax
mov dword [esp + 0xb0], 2
mov dword [esp + 0x180], eax
je 0x431302
mov edx, dword [esp]
mov eax, dword [edx + 0xc]
mov ecx, dword [edx + 4]
mov dword [esp + 0x17c], eax
mov eax, dword [edx]
mov dword [esp + 0x170], eax
mov dword [esp + 0x174], ecx
mov ecx, dword [edx + 0x10]
mov dword [esp + 0x180], ecx
lea edx, [esp + 0xb0]
lea ecx, [esp + 0x170]
push esi
push dword [ebp + 8]
call fcn.0042f3cd
add esp, 8
mov esi, eax
test eax, eax
je 0x431332
and bl, 1
je 0x43185b
mov ecx, esi
call fcn.0041fa3a
mov esi, dword [edi + 0x20]
mov ebx, dword [edi + 0x24]
mov ecx, ebx
call fcn.00416d74
mov dword [esp + 0xc], edx
push ebx
push esi
mov dword [esp + 0x10], eax
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
lea eax, [esp + 0x170]
lea esi, [esp + 0xb0]
mov ecx, 0xf
mov edi, eax
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [eax + 0x38]
movsd xmm0, qword [eax + 0x30]
movsd xmm2, qword [eax + 0x28]
movsd xmm1, qword [eax + 0x20]
cmp dword [eax], 2
mov dword [esp + 0x80], ecx
movsd qword [esp + 0x78], xmm0
movsd qword [esp + 0x70], xmm2
movsd qword [esp + 0x68], xmm1
je 0x4313a5
lea ecx, [esp + 0x180]
call fcn.00403c26
mov eax, dword [esp + 8]
lea edx, [esp + 0x170]
movsd xmm1, qword [esp + 0x70]
movsd xmm0, qword [esp + 0x68]
mov dword [edx], eax
mov eax, dword [esp + 0xc]
mov dword [edx + 4], eax
mov dword [edx + 8], ebx
mov eax, dword [esp + 0x80]
movsd qword [edx + 0x14], xmm1
movsd xmm1, qword [esp + 0x78]
movsd qword [edx + 0xc], xmm0
movsd qword [edx + 0x1c], xmm1
mov dword [edx + 0x24], eax
mov ecx, dword [esp + 0x1c]
call fcn.00439401
cmp dword [esp + 4], 0
je 0x431408
push dword [esp + 0x10]
push 0
push dword [0x4e4100]
call sub.kernel32.dll_HeapFree
mov edi, dword [esp + 0x1c]
mov bl, byte [esp + 0x14]
jmp 0x430fdb
test edi, edi
mov dword [esp + 4], 0
je 0x4314f5
mov ecx, dword [esp + 4]
add ebx, 4
lea ecx, [ecx + ecx*2]
lea esi, [eax + ecx*4]
mov eax, dword [esp + 0xc]
mov ecx, dword [eax + 0x4c]
mov edx, dword [eax + 0x54]
push dword [ebx]
push dword [ebx - 4]
call fcn.00418999
add esp, 8
test eax, eax
je 0x4340b5
xor ecx, ecx
mov dword [esp + 0xb0], 1
mov dword [esp + 0xb4], ecx
mov dword [esp + 0x18c], ecx
mov dword [esp + 0x180], 0x20
mov byte [esp + 0x190], 3
mov dword [esp + 0x170], ecx
mov dword [esp + 0xb8], ecx
mov dword [esp + 0x178], ecx
lea ecx, [esp + 0xb0]
mov dword [esp + 0x184], ecx
mov dword [esp + 0x188], 0x4be780
mov ecx, eax
lea edx, [esp + 0x170]
call fcn.004189dd
test al, al
jne 0x4340d1
movsd xmm0, qword [esp + 0xb0]
mov eax, dword [esp + 0xb8]
inc dword [esp + 4]
add ebx, 8
movsd qword [esp + 0x68], xmm0
mov dword [esp + 0x70], eax
mov dword [esi + 8], eax
movsd qword [esi], xmm0
add esi, 0xc
dec edi
jne 0x431432
mov eax, dword [esp + 4]
movsd xmm0, qword [esp + 0x48]
mov dword [esp + 0x70], eax
mov eax, dword [esp]
movsd qword [esp + 0x68], xmm0
mov esi, dword [eax + 8]
lea ecx, [esi + 0x7c]
call fcn.0041f502
test eax, eax
mov ecx, 0x4bf048
lea edx, [esp + 0x170]
cmovne ecx, eax
xor eax, eax
mov dword [edx], esi
mov dword [edx + 4], ecx
mov dword [edx + 8], eax
lea edi, [esp + 0xb0]
mov ecx, edi
push eax
push 0x4cc61c
call fcn.0041f597
add esp, 8
mov ecx, dword [esp + 0x10]
lea edx, [esp + 0x30]
push edi
lea eax, [esp + 0x6c]
push eax
call fcn.0043c512
add esp, 8
mov esi, eax
cmp dword [esp + 0x20], 0
je 0x43317d
cmp dword [esp + 0x44], 0
je 0x43317d
push dword [esp + 0x20]
push 0
push dword [0x4e4100]
call sub.kernel32.dll_HeapFree
jmp 0x43317d
lea esi, [esp + 0xb0]
mov edx, ebx
mov ecx, esi
push dword [esp + 8]
call fcn.00498ea0
add esp, 4
mov eax, dword [esi]
mov ebx, dword [esi + 8]
test eax, eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x28], ebx
je 0x431b43
mov eax, dword [esp + 0xb4]
mov dword [esp + 0x44], eax
jmp 0x431b64
mov eax, dword [esp + 0x20]
jmp 0x43317b
mov edx, dword [esp + 0x18]
cmp edx, esi
jb 0x4342d5
mov dword [ebp + 0xc], edx
mov dword [esp + 0x20], 0
lea ecx, [esp + 0x170]
mov edi, edx
mov edx, ebx
mov dword [esp], ecx
call fcn.00421c5c
mov ecx, dword [esp + 0x60]
cmp esi, edi
jne 0x431a11
mov edi, dword [esp]
lea esi, [esp + 0xb0]
mov ecx, esi
mov edx, edi
push 1
call fcn.00435a5b
add esp, 4
mov edx, edi
mov ecx, 0xc
push esi
call fcn.00435f95
add esp, 4
mov esi, eax
lea ecx, [esp + 0x170]
call fcn.0041c9d6
jmp 0x433179
mov ecx, dword [esp]
mov edi, 0x4bed30
mov esi, dword [ecx + 8]
mov eax, dword [esi + 0x144]
or eax, dword [esi + 0x148]
and eax, 0x400
mov edx, eax
shr edx, 0xa
cmp dword [esi + 0x10], 5
mov dword [esp + 8], edx
lea edx, [esi + 0x10]
cmovne edi, edx
test eax, eax
je 0x432786
mov esi, dword [edi]
cmp esi, 4
jb 0x431697
mov eax, dword [edi + 8]
mov dword [esp + 0x20], 0
mov eax, dword [eax + 0x24]
push dword [edi + 4]
call eax
add esp, 4
mov dword [esp + 0x2e0], esi
mov dword [esp + 0x2e4], eax
mov dword [esp + 0x2e8], edx
mov dword [esp + 0x38], edx
movsd xmm0, qword [esp + 0x2e0]
movsd qword [esp + 0x30], xmm0
mov edx, dword [esp + 4]
lea esi, [esp + 0x170]
mov ecx, esi
push dword [esp + 0xc]
call fcn.00448bc0
add esp, 4
cmp dword [esi], 0
jne 0x4316f3
mov eax, dword [esp + 0x174]
mov ecx, dword [esp + 0x178]
mov dword [esp + 4], eax
mov dword [esp + 0xc], ecx
mov edx, dword [esp + 0x1c]
je 0x433187
mov ecx, dword [esp]
call fcn.00438138
test eax, eax
je 0x431710
mov ecx, eax
call fcn.0041fa3a
mov eax, dword [esp]
mov esi, dword [eax + 8]
lea ecx, [esi + 0x7c]
call fcn.0041f502
test eax, eax
mov ecx, 0x4bf048
lea edx, [esp + 0x170]
cmovne ecx, eax
xor eax, eax
mov dword [edx], esi
mov dword [edx + 4], ecx
mov dword [edx + 8], eax
lea ecx, [esp + 0xb0]
push eax
push 0x4cc61c
call fcn.0041f597
add esp, 8
lea edx, [esp + 0xb0]
mov ecx, esi
call fcn.0041f6ac
mov esi, eax
jmp 0x435090
mov dword [esp + 0x20], 0
mov ecx, dword [esp]
mov edx, edi
call fcn.00438138
test eax, eax
je 0x431780
mov ecx, eax
call fcn.0041fa3a
mov eax, dword [esp]
mov eax, dword [eax + 8]
mov dword [esp + 0x10], eax
mov edx, dword [esp + 4]
lea ecx, [esp + 0x48]
push dword [esp + 0xc]
call fcn.00498ea0
add esp, 4
mov edi, dword [esp + 0x48]
mov ebx, dword [esp + 0x4c]
mov esi, dword [esp + 0x50]
mov ecx, esi
call fcn.00416d74
mov dword [esp + 4], edx
test edi, edi
cmovne ebx, edi
push esi
push ebx
push eax
mov ebx, eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov edi, ebx
mov dword [esp + 0x30], ebx
mov ebx, dword [esp + 4]
mov eax, dword [esp]
mov dword [esp + 0x170], 0
mov dword [esp + 0x34], ebx
mov dword [esp + 0x38], esi
mov esi, dword [eax + 8]
lea ecx, [esi + 0x7c]
call fcn.0041f502
test eax, eax
mov ecx, 0x4bf048
lea edx, [esp + 0xb0]
cmovne ecx, eax
xor eax, eax
mov dword [edx], esi
mov dword [edx + 4], ecx
mov dword [edx + 8], eax
lea esi, [esp + 0x68]
mov ecx, esi
push eax
push 0x4cc61c
call fcn.0041f597
add esp, 8
mov ecx, dword [esp + 0x10]
lea edx, [esp + 0x30]
push esi
push 0
lea eax, [esp + 0x178]
push eax
call fcn.00438a28
add esp, 0xc
mov esi, eax
mov eax, dword [esp + 0x48]
test eax, eax
je 0x433179
cmp dword [esp + 0x4c], 0
je 0x433179
push eax
jmp 0x43316c
lea ecx, [esp + 0xb0]
call fcn.004351b0
cmp dword [esp + 4], 0
je 0x431561
push dword [esp + 0x10]
push 0
push dword [0x4e4100]
call sub.kernel32.dll_HeapFree
jmp 0x431561
mov eax, edi
shl esi, 4
lea edx, [esp + 0x170]
shl eax, 4
add esi, ecx
mov dword [esp], edx
add eax, ecx
mov dword [esp + 0x18], eax
mov eax, dword [esi]
mov edx, dword [esi + 8]
mov dword [esp + 4], eax
mov eax, dword [esp]
mov eax, dword [eax + 0x6c]
test eax, eax
je 0x432743
mov ecx, dword [esp]
imul eax, eax, 0x16c
add esi, 0x10
mov dword [esp + 0xc], edx
mov ecx, dword [ecx + 0x64]
add eax, ecx
mov dword [esp + 0x24], eax
mov eax, ecx
mov ebx, dword [eax + 0x24]
mov dword [esp + 0x10], eax
cmp edx, ebx
jne 0x431a85
mov edi, dword [eax + 0x20]
push edx
push edi
push dword [esp + 0xc]
call sub.msvcrt.dll_memcmp
mov edx, dword [esp + 0x18]
add esp, 0xc
test eax, eax
mov eax, dword [esp + 0x10]
je 0x431ae4
mov dword [esp + 0x14], ebx
mov ebx, dword [eax + 0x28]
lea ecx, [eax + 0x16c]
mov eax, dword [eax + 0x30]
mov dword [esp + 8], ecx
shl eax, 2
add ebx, 4
lea edi, [eax + eax*2]
test edi, edi
je 0x431aca
cmp edx, dword [ebx]
jne 0x431ac2
push edx
push dword [ebx - 4]
push dword [esp + 0xc]
call sub.msvcrt.dll_memcmp
mov edx, dword [esp + 0x18]
add esp, 0xc
test eax, eax
je 0x431ad9
add ebx, 0xc
add edi, 0xfffffff4
jmp 0x431aa2
mov eax, dword [esp + 8]
cmp eax, dword [esp + 0x24]
jne 0x431a5d
jmp 0x432743
mov eax, dword [esp + 0x10]
mov ebx, dword [esp + 0x14]
mov edi, dword [eax + 0x20]
mov ecx, ebx
call fcn.00416d74
mov dword [esp + 4], edx
mov ecx, ebx
mov ebx, eax
push ecx
push edi
push eax
mov edi, ecx
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov ecx, dword [esp]
mov edx, ebx
push edi
call fcn.00436009
add esp, 4
mov dword [esp], eax
test eax, eax
mov eax, dword [esp + 0x18]
je 0x43421a
cmp dword [esp + 4], 0
je 0x431b36
push ebx
push 0
push dword [0x4e4100]
call sub.kernel32.dll_HeapFree
mov eax, dword [esp + 0x18]
cmp esi, eax
jne 0x431a2b
jmp 0x431608
mov esi, dword [esp + 0xb4]
mov ecx, ebx
call fcn.00416d74
mov dword [esp + 0x44], edx
push ebx
push esi
mov dword [esp + 0x28], eax
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov ecx, dword [esp]
mov edx, edi
call fcn.00438138
test eax, eax
je 0x431b79
mov ecx, eax
call fcn.0041fa3a
mov eax, dword [ebp + 8]
mov ebx, dword [ebp + 0xc]
mov edx, dword [eax + 8]
cmp edx, ebx
jb 0x4342c1
mov esi, dword [eax]
mov dword [ebp + 0xc], edx
mov dword [esp + 0x140], ebx
mov dword [esp + 0x13c], edx
jne 0x431bb7
mov dword [esp + 0x138], 0
mov dword [esp + 0x118], 4
jmp 0x431c20
mov edi, edx
shl ebx, 4
mov dword [esp + 4], esi
shl edi, 4
add edi, esi
sub edi, esi
sub edi, ebx
mov al, byte [0x4e4158]
mov esi, edi
shr esi, 1
mov ecx, esi
mov edx, 4
call fcn.00413060
test eax, eax
mov dword [esp + 0x118], eax
je 0x4342f1
mov eax, dword [esp + 4]
mov esi, dword [esp + 0x118]
shr edi, 4
xor ecx, ecx
lea eax, [ebx + eax + 8]
mov ebx, ecx
mov ecx, dword [eax - 8]
mov edx, dword [eax]
add eax, 0x10
mov dword [esi + ebx*8], ecx
mov ecx, ebx
mov dword [esi + ebx*8 + 4], edx
inc ecx
cmp edi, ecx
jne 0x431c01
mov dword [esp + 0x138], ecx
mov eax, dword [esp + 0x20]
lea edx, [esp + 0x48]
mov dword [esp + 0x12c], eax
mov eax, dword [esp + 0x28]
mov dword [esp + 0x130], eax
mov eax, dword [esp]
mov ecx, dword [eax + 8]
mov eax, dword [ecx + 0x58]
mov dword [esp + 0x114], ecx
mov ecx, dword [ecx + 0x60]
shl ecx, 4
mov dword [edx], eax
add ecx, eax
mov dword [edx + 4], ecx
lea ecx, [esp + 0x170]
call fcn.00427fb1
mov esi, dword [esp + 0x170]
test esi, esi
je 0x431d7c
mov eax, dword [esp + 0x48]
mov edi, dword [esp + 0x174]
mov ebx, dword [esp + 0x178]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x4c]
mov dword [esp + 4], eax
mov ecx, 4
call fcn.0041c61d
mov dword [eax], esi
mov dword [eax + 4], edi
mov esi, dword [esp + 4]
mov edi, dword [esp + 0xc]
lea ecx, [esp + 0xb0]
mov dword [eax + 8], ebx
xor ebx, ebx
mov dword [esp + 4], 0x10
mov dword [ecx], eax
mov dword [ecx + 4], edx
mov dword [ecx + 8], 1
lea ecx, [esp + 0x68]
inc ebx
mov dword [ecx], edi
mov dword [ecx + 4], esi
mov esi, eax
lea ecx, [esp + 0x170]
lea edx, [esp + 0x68]
call fcn.00427fb1
mov edi, dword [esp + 0x170]
test edi, edi
je 0x431d53
mov eax, dword [esp + 0x174]
mov ecx, dword [esp + 0x178]
cmp ebx, dword [esp + 0xb4]
mov edx, ebx
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], ecx
jne 0x431d29
lea ecx, [esp + 0xb0]
push 1
call fcn.004250cd
add esp, 4
mov esi, dword [esp + 0xb0]
mov edx, ebx
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0xc]
inc edx
mov ebx, edx
mov dword [esi + eax - 4], edi
mov edi, dword [esp + 0x10]
mov dword [esi + eax], ecx
mov dword [esi + eax + 4], edi
add eax, 0xc
mov dword [esp + 0xb8], edx
mov dword [esp + 4], eax
jmp 0x431cd3
movsd xmm0, qword [esp + 0xb0]
mov eax, dword [esp + 0xb8]
movsd qword [esp + 0xa0], xmm0
mov dword [esp + 0xa8], eax
mov ecx, dword [esp + 0xa0]
jmp 0x431d9c
xor eax, eax
mov dword [esp + 0xa0], 4
mov ecx, 4
mov dword [esp + 0xa4], eax
mov dword [esp + 0xa8], eax
mov edx, dword [esp + 0x114]
lea eax, [eax + eax*2]
lea eax, [ecx + eax*4]
mov esi, dword [edx + 0x64]
mov edx, dword [edx + 0x6c]
mov dword [esp + 0x64], edx
lea edx, [esp + 0x68]
mov dword [esp + 0x154], esi
mov dword [edx], ecx
mov dword [edx + 4], eax
mov eax, dword [esp + 0x20]
mov dword [edx + 8], eax
mov eax, dword [esp + 0x28]
mov dword [edx + 0xc], eax
lea eax, [esp + 0x70]
lea ecx, [esp + 0x170]
push eax
call fcn.00427ef0
add esp, 4
mov esi, dword [esp + 0x178]
test esi, esi
je 0x431f71
mov eax, dword [esp + 0x174]
movsd xmm0, qword [esp + 0x180]
mov ebx, dword [esp + 0x170]
mov edi, dword [esp + 0x17c]
mov dword [esp + 4], eax
movsd qword [esp + 0xb0], xmm0
call fcn.0041c7b2
mov ecx, dword [esp + 4]
mov dword [eax], ebx
lea edx, [esp + 0xb0]
mov dword [esp + 8], eax
mov dword [eax + 4], ecx
mov dword [eax + 8], esi
mov dword [eax + 0xc], edi
xor edi, edi
lea ecx, [esp + 0x48]
mov esi, 0x28
movsd xmm0, qword [edx]
inc edi
movsd qword [eax + 0x10], xmm0
mov dword [ecx], eax
lea eax, [esp + 0x170]
mov dword [ecx + 4], 4
mov dword [ecx + 8], 1
movsd xmm0, qword [esp + 0x68]
movsd xmm1, qword [esp + 0x70]
mov dword [esp + 0x98], eax
movsd qword [edx + 8], xmm1
movsd qword [edx], xmm0
lea edx, [esp + 0xb0]
lea eax, [esp + 0xb8]
lea ecx, [esp + 0x170]
push eax
call fcn.00427ef0
add esp, 4
mov ebx, dword [esp + 0x178]
test ebx, ebx
je 0x431f38
mov edx, dword [esp + 0x174]
mov eax, dword [esp + 0x170]
mov ecx, dword [esp + 0x17c]
movsd xmm0, qword [esp + 0x180]
cmp edi, dword [esp + 0x4c]
mov dword [esp + 0x10], edx
mov edx, edi
mov dword [esp + 0xc], eax
mov dword [esp + 4], ecx
movsd qword [esp + 0x30], xmm0
jne 0x431efe
lea ecx, [esp + 0x48]
call fcn.0041c7e0
mov eax, dword [esp + 0x48]
mov edx, edi
mov dword [esp + 8], eax
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edi, dword [esp + 4]
inc edx
mov dword [eax + esi - 0x10], ecx
mov ecx, dword [esp + 0x10]
mov dword [eax + esi - 0xc], ecx
mov dword [eax + esi - 8], ebx
mov dword [eax + esi - 4], edi
mov edi, edx
movsd xmm0, qword [esp + 0x30]
movsd qword [eax + esi], xmm0
mov dword [esp + 0x50], edx
add esi, 0x18
jmp 0x431e86
movsd xmm0, qword [esp + 0x48]
mov edi, dword [esp + 0x50]
movsd qword [esp + 0x30], xmm0
cmp edi, 0x15
mov dword [esp + 0x38], edi
mov esi, dword [esp + 0x30]
jae 0x431f8d
cmp edi, 1
jbe 0x432589
mov edx, edi
mov ecx, esi
push 1
call fcn.0042af7b
add esp, 4
jmp 0x432589
xor edi, edi
mov dword [esp + 0x30], 8
mov esi, 8
mov dword [esp + 0x34], edi
mov dword [esp + 0x38], edi
jmp 0x432589
lea eax, [edi*4]
mov dword [esp + 0xf4], esi
and eax, 0xfffffff8
lea ecx, [eax + eax*2]
mov al, byte [0x4e4158]
mov edx, 8
call fcn.00413060
test eax, eax
je 0x4342ff
mov esi, eax
mov al, byte [0x4e4158]
mov ecx, pe_nt_image_headers32
mov edx, 4
call fcn.00413060
test eax, eax
mov dword [esp + 0x14], esi
je 0x434318
mov ebx, eax
mov eax, dword [esp + 0xf4]
mov dword [esp + 0x2c], 0
mov dword [esp + 0x11c], 0x10
mov dword [esp + 0x60], edi
lea ecx, [eax + 0x30]
add eax, 0xffffffe8
mov dword [esp + 0x90], eax
xor eax, eax
mov dword [esp + 0x144], ecx
mov ecx, eax
mov eax, edi
sub eax, ecx
mov dword [esp + 0x18], ecx
lea edx, [ecx + ecx*2]
mov ecx, dword [esp + 0xf4]
cmp eax, 2
lea ecx, [ecx + edx*8]
mov dword [esp + 0xc], ecx
jae 0x432092
mov edx, edi
mov ecx, dword [esp + 0x18]
mov edi, edx
sub edi, ecx
mov dword [esp + 4], edi
mov edi, dword [esp + 0x60]
jb 0x43410c
cmp edx, edi
ja 0x43410c
jae 0x4320bf
cmp eax, 0xa
jae 0x4320bf
mov ecx, dword [esp + 0x18]
lea edx, [ecx + 0xa]
cmp edx, edi
cmovae edx, edi
mov dword [esp + 0x94], edx
sub edx, ecx
jb 0x434193
cmp eax, 1
adc eax, 0
mov ecx, dword [esp + 0xc]
mov dword [esp + 4], edx
push eax
call fcn.0042af7b
add esp, 4
mov edi, dword [esp + 0x11c]
jmp 0x4320cd
movsd xmm0, qword [ecx]
movsd xmm1, qword [ecx + 0x18]
ucomisd xmm0, xmm1
ja 0x432416
cmp eax, 2
jne 0x432429
mov ecx, dword [esp + 0x18]
mov eax, 2
lea edx, [ecx + 2]
jmp 0x432036
mov edi, dword [esp + 0x11c]
mov dword [esp + 0x94], edx
cmp dword [esp + 0x2c], edi
jne 0x43211f
mov al, byte [0x4e4158]
mov ecx, edi
shl ecx, 4
mov edx, 4
call fcn.00413060
test eax, eax
je 0x4341b7
lea esi, [edi + edi]
shl edi, 3
push edi
push ebx
push eax
mov edi, eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
push ebx
push 0
push dword [0x4e4100]
call sub.kernel32.dll_HeapFree
mov dword [esp + 0x11c], esi
mov esi, dword [esp + 0x14]
mov ebx, edi
jmp 0x432126
mov dword [esp + 0x11c], edi
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 4]
mov edi, dword [esp + 0x2c]
mov dword [esp + 0x9c], ebx
mov dword [ebx + edi*8], ecx
mov dword [ebx + edi*8 + 4], eax
inc edi
cmp edi, 2
mov dword [esp + 0x2c], edi
jb 0x4323fe
mov eax, dword [ebx + edi*8 - 8]
mov ecx, dword [ebx + edi*8 - 4]
add ecx, eax
cmp ecx, dword [esp + 0x60]
je 0x43219b
mov edx, dword [ebx + edi*8 - 0x10]
cmp edx, eax
jbe 0x43219b
cmp edi, 2
jbe 0x4323fe
lea ecx, [edi - 3]
lea esi, [edx + eax]
mov dword [esp + 8], ecx
mov ecx, dword [ebx + edi*8 - 0x18]
cmp ecx, esi
jbe 0x4321ab
mov esi, dword [esp + 0x14]
cmp edi, 3
jbe 0x4323fe
add edx, ecx
cmp dword [ebx + edi*8 - 0x20], edx
jbe 0x4321ab
jmp 0x4323fe
cmp edi, 3
jb 0x4321b3
lea ecx, [edi - 3]
mov dword [esp + 8], ecx
mov ecx, dword [ebx + edi*8 - 0x18]
mov edx, dword [esp + 8]
cmp ecx, eax
jb 0x4321b6
lea edx, [edi - 2]
cmp edi, edx
jbe 0x433ff6
lea eax, [edx + 1]
cmp edi, eax
jbe 0x434008
mov edi, dword [ebx + edx*8 + 8]
mov eax, dword [ebx + edx*8 + 0xc]
mov ecx, dword [ebx + edx*8 + 4]
mov dword [esp + 8], edx
add eax, edi
mov dword [esp + 0x18], ecx
mov edx, eax
sub edx, ecx
mov dword [esp + 0x10], edx
mov edx, dword [esp + 0x60]
jb 0x43403f
cmp eax, edx
ja 0x434058
mov edx, dword [esp + 8]
lea eax, [eax + eax*2]
lea ecx, [ecx + ecx*2]
mov dword [esp + 0xf0], edi
mov dword [esp + 0x104], eax
mov eax, dword [esp + 0x10]
mov esi, dword [ebx + edx*8]
mov edx, dword [esp + 0xf4]
lea edx, [edx + ecx*8]
sub eax, esi
lea ecx, [esi + esi*2]
mov dword [esp + 0x24], esi
lea ebx, [edx + ecx*8]
cmp eax, esi
mov dword [esp + 4], edx
jae 0x4322ef
mov dword [esp + 0x10], eax
lea eax, [eax*8]
lea edi, [eax + eax*2]
push edi
push ebx
mov esi, dword [esp + 0x1c]
push esi
call sub.msvcrt.dll_memcpy
add esp, 0xc
add edi, esi
cmp dword [esp + 0x24], 0
mov dword [esp + 0xc], edi
jle 0x43238f
cmp dword [esp + 0x10], 0
jle 0x43238f
mov eax, dword [esp + 0x90]
mov ecx, dword [esp + 0x104]
mov esi, dword [esp + 0x14]
mov edi, dword [esp + 0xc]
lea eax, [eax + ecx*8]
movsd xmm0, qword [ebx - 0x18]
movsd xmm1, qword [edi - 0x18]
xor ecx, ecx
xor edx, edx
ucomisd xmm0, xmm1
setbe cl
seta dl
neg ecx
neg edx
ucomisd xmm0, xmm1
lea ecx, [ecx + ecx*2]
lea edx, [edx + edx*2]
lea edi, [edi + ecx*8]
lea ebx, [ebx + edx*8]
mov ecx, edi
cmova ecx, ebx
cmp ebx, dword [esp + 4]
movsd xmm0, qword [ecx + 0x10]
movsd qword [eax + 0x10], xmm0
movsd xmm0, qword [ecx]
movsd xmm1, qword [ecx + 8]
movsd qword [eax + 8], xmm1
movsd qword [eax], xmm0
jbe 0x4322e6
add eax, 0xffffffe8
cmp edi, esi
ja 0x43228c
mov dword [esp + 0xc], edi
jmp 0x43239d
lea eax, [esi*8]
lea edi, [eax + eax*2]
push edi
push edx
mov esi, dword [esp + 0x1c]
push esi
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov eax, dword [esp + 0x24]
add edi, esi
mov dword [esp + 0xc], edi
test eax, eax
jle 0x432395
cmp dword [esp + 0x10], eax
jle 0x432395
mov eax, dword [esp + 0xf4]
mov ecx, dword [esp + 0x104]
mov esi, dword [esp + 0x14]
lea eax, [eax + ecx*8]
mov dword [esp + 0x10], eax
movsd xmm0, qword [esi]
xor ecx, ecx
xor edx, edx
mov eax, esi
mov edi, dword [esp + 4]
ucomisd xmm0, qword [ebx]
cmova eax, ebx
setbe cl
movsd xmm0, qword [eax + 0x10]
movsd qword [edi + 0x10], xmm0
movsd xmm0, qword [eax]
movsd xmm1, qword [eax + 8]
lea eax, [ecx + ecx*2]
seta cl
lea esi, [esi + eax*8]
movsd qword [edi + 8], xmm1
movsd qword [edi], xmm0
add edi, 0x18
cmp esi, dword [esp + 0xc]
mov dword [esp + 4], edi
jae 0x432399
mov dl, cl
lea eax, [edx + edx*2]
lea ebx, [ebx + eax*8]
cmp ebx, dword [esp + 0x10]
jb 0x432335
jmp 0x432399
mov esi, dword [esp + 0x14]
jmp 0x43239d
mov esi, dword [esp + 0x14]
mov ebx, dword [esp + 4]
mov eax, dword [esp + 0xc]
sub eax, esi
push eax
push esi
push ebx
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov eax, dword [esp + 0xf0]
mov edx, dword [esp + 8]
mov edi, dword [esp + 0x2c]
mov ebx, dword [esp + 0x9c]
mov ecx, dword [esp + 0x18]
add eax, dword [esp + 0x24]
cmp edi, edx
mov dword [ebx + edx*8 + 8], eax
mov dword [ebx + edx*8 + 0xc], ecx
jbe 0x434071
lea eax, [ebx + edx*8]
not edx
add edx, edi
lea ecx, [eax + 8]
shl edx, 3
push edx
push ecx
push eax
call sub.msvcrt.dll_memmove
add esp, 0xc
mov esi, dword [esp + 0x14]
dec edi
jmp 0x432141
mov eax, dword [esp + 0x94]
mov edi, dword [esp + 0x60]
cmp eax, edi
jb 0x432010
jmp 0x432560
cmp eax, 2
jne 0x432454
mov ecx, dword [esp + 0x18]
mov eax, 2
lea edx, [ecx + 2]
jmp 0x432498
mov esi, dword [esp + 0x144]
movapd xmm2, xmm1
lea esi, [esi + edx*8]
mov edx, 2
movapd xmm3, xmm2
movsd xmm2, qword [esi]
ucomisd xmm3, xmm2
ja 0x43247f
inc edx
add esi, 0x18
cmp eax, edx
jne 0x43243c
jmp 0x43247d
mov esi, dword [esp + 0x144]
movapd xmm2, xmm1
lea esi, [esi + edx*8]
mov edx, 2
movapd xmm3, xmm2
movsd xmm2, qword [esi]
ucomisd xmm3, xmm2
jbe 0x43247f
inc edx
add esi, 0x18
cmp eax, edx
jne 0x432467
mov edx, eax
mov ecx, dword [esp + 0x18]
mov eax, edx
ucomisd xmm0, xmm1
lea esi, [edx + ecx]
mov edx, esi
mov esi, dword [esp + 0x14]
jbe 0x432036
cmp ecx, edx
ja 0x434209
mov edi, dword [esp + 0x60]
mov ecx, dword [esp + 0xc]
cmp edx, edi
ja 0x4341f6
cmp eax, 2
jb 0x432032
mov esi, dword [esp + 0x18]
mov edi, dword [esp + 0x90]
mov dword [esp + 0x94], edx
mov edx, eax
shr edx, 1
add esi, eax
lea esi, [esi + esi*2]
lea esi, [edi + esi*8]
mov edi, ecx
movsd xmm0, qword [edi + 0x10]
movsd qword [esp + 0x180], xmm0
movsd xmm0, qword [edi]
movsd xmm1, qword [edi + 8]
movsd qword [esp + 0x178], xmm1
movsd qword [esp + 0x170], xmm0
movsd xmm0, qword [esi + 0x10]
movsd qword [edi + 0x10], xmm0
movsd xmm0, qword [esi]
movsd xmm1, qword [esi + 8]
movsd qword [edi + 8], xmm1
movsd qword [edi], xmm0
add edi, 0x18
movsd xmm0, qword [esp + 0x180]
movsd qword [esi + 0x10], xmm0
movsd xmm0, qword [esp + 0x170]
movsd xmm1, qword [esp + 0x178]
movsd qword [esi + 8], xmm1
movsd qword [esi], xmm0
add esi, 0xffffffe8
dec edx
jne 0x4324d9
mov esi, dword [esp + 0x14]
mov edx, dword [esp + 0x94]
jmp 0x432032
mov edi, esi
xor esi, esi
push ebx
push esi
push dword [0x4e4100]
call sub.kernel32.dll_HeapFree
push edi
mov edi, dword [esp + 0x64]
push esi
push dword [0x4e4100]
call sub.kernel32.dll_HeapFree
mov esi, dword [esp + 0xf4]
mov eax, dword [esp + 0x34]
lea ecx, [edi + edi*2]
mov dword [esp + 0xb0], esi
lea ecx, [esi + ecx*8]
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], esi
mov dword [esp + 0xbc], ecx
mov ecx, edi
call fcn.0041c61d
cmp edx, edi
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], edx
mov dword [esp + 0x70], 0
jae 0x4325e3
xor edx, edx
lea ecx, [esp + 0x68]
push edi
call fcn.004250cd
add esp, 4
mov eax, dword [esp + 0x68]
mov edx, dword [esp + 0x70]
jmp 0x4325e5
xor edx, edx
movsd xmm0, qword [esp + 0xb0]
movsd xmm1, qword [esp + 0xb8]
movsd qword [esp + 0x178], xmm1
movsd qword [esp + 0x170], xmm0
mov esi, dword [esp + 0x17c]
mov ecx, dword [esp + 0x178]
cmp ecx, esi
mov dword [esp + 4], esi
je 0x432651
lea edi, [edx + edx*2]
lea eax, [eax + edi*4 + 4]
mov edi, dword [ecx + 8]
test edi, edi
je 0x43264a
mov ebx, dword [ecx + 0xc]
mov esi, dword [ecx + 0x10]
add ecx, 0x18
mov dword [eax - 4], edi
inc edx
mov dword [eax + 4], esi
mov dword [eax], ebx
add eax, 0xc
cmp ecx, dword [esp + 4]
jne 0x432626
jmp 0x432651
add ecx, 0x18
mov dword [esp + 4], ecx
mov eax, dword [esp + 4]
lea ecx, [esp + 0x170]
mov dword [esp + 0x70], edx
mov dword [ecx + 8], eax
call fcn.0041984b
mov eax, dword [esp + 0x70]
movsd xmm0, qword [esp + 0x68]
test eax, eax
movsd qword [esp + 0x108], xmm0
mov dword [esp + 0x110], eax
je 0x4326c1
dec eax
mov dword [esp + 0x110], eax
lea eax, [eax + eax*2]
mov ecx, dword [esp + 0x108]
mov esi, dword [ecx + eax*4]
test esi, esi
je 0x4326c1
lea eax, [ecx + eax*4]
mov ecx, dword [eax + 4]
mov eax, dword [eax + 8]
mov dword [esp + 0x68], esi
mov dword [esp + 0x70], eax
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x74], 0
jmp 0x432c6f
mov edx, dword [esp + 0x64]
mov esi, dword [esp + 0x154]
mov edi, dword [esp + 0x20]
mov ecx, dword [esp + 0x28]
imul ebx, edx, 0x16c
mov dword [esp + 0x68], esi
test edx, edx
lea eax, [esi + ebx]
mov dword [esp + 0x6c], eax
mov dword [esp + 0x70], edi
mov dword [esp + 0x74], ecx
mov edi, dword [esp + 0x118]
mov ecx, dword [esp + 0x138]
mov dword [esp + 0x78], edi
mov dword [esp + 0x7c], ecx
je 0x432c69
lea edi, [esp + 0x170]
lea edx, [esp + 0x70]
mov ecx, edi
push esi
call fcn.00419c0f
add esp, 4
mov eax, dword [esp + 0x174]
add esi, 0x16c
test eax, eax
jne 0x432bb9
add ebx, 0xfffffe94
jne 0x432712
jmp 0x432c69
mov eax, edx
mov edx, dword [esp + 4]
lea ecx, [esp + 0xb0]
push eax
call fcn.00498ea0
add esp, 4
cmp dword [esp + 0xb0], 0
je 0x432d49
mov eax, dword [esp + 0xb8]
movsd xmm0, qword [esp + 0xb0]
mov dword [esp + 0x50], eax
movsd qword [esp + 0x48], xmm0
jmp 0x432d80
mov dword [esp + 0x2e0], 5
mov edx, dword [esp + 0x1c]
call fcn.00438138
mov esi, dword [esp + 0xc]
test eax, eax
je 0x4327a9
mov ecx, eax
call fcn.0041fa3a
test byte [esp + 0x10], 1
je 0x432ce5
xor ebx, ebx
cmp byte [esp + 0x90], 0
setne byte [esp + 0x10]
mov edi, esi
mov esi, dword [esp + 4]
lea ecx, [esp + 0x170]
mov edx, esi
push edi
call fcn.00448bc0
add esp, 4
lea eax, [esp + 0x170]
mov ecx, esi
mov esi, edi
mov eax, dword [eax]
test eax, eax
jne 0x4327fa
mov ecx, dword [esp + 0x174]
mov esi, dword [esp + 0x178]
lea edx, [esp + 0x170]
mov dword [edx + 4], ecx
mov dword [edx + 8], esi
mov dword [edx], eax
mov al, byte [esp + 0x10]
mov esi, dword [esp]
mov bl, al
mov ecx, esi
push ebx
call fcn.00435902
add esp, 4
mov ebx, dword [esi + 8]
test eax, eax
je 0x433237
mov dword [esp + 0x10], ebx
mov edx, dword [esp + 4]
lea ecx, [esp + 0x12c]
push dword [esp + 0xc]
call fcn.00498ea0
add esp, 4
mov ebx, dword [esp + 0x12c]
mov edi, dword [esp + 0x130]
mov esi, dword [esp + 0x134]
mov ecx, esi
mov dword [esp + 4], ebx
call fcn.00416d74
mov dword [esp + 0xc], edx
test ebx, ebx
cmovne edi, ebx
push esi
push edi
push eax
mov edi, eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov eax, dword [esp + 0xc]
mov dword [esp + 0x120], edi
mov dword [esp + 0x124], eax
mov eax, dword [esp]
mov dword [esp + 0x128], esi
mov esi, dword [eax + 8]
lea ecx, [esi + 0x7c]
call fcn.0041f502
test eax, eax
mov ecx, 0x4bf048
lea edx, [esp + 0x108]
cmovne ecx, eax
xor eax, eax
mov dword [edx], esi
mov dword [edx + 4], ecx
mov dword [edx + 8], eax
lea ecx, [esp + 0xa0]
push eax
push 0x4cc61c
call fcn.0041f597
add esp, 8
mov ebx, dword [esp + 0x10]
lea ecx, [ebx + 0x7c]
call fcn.0041f502
test eax, eax
mov edi, 0x4bf048
cmovne edi, eax
xor ecx, ecx
inc ecx
call fcn.0041fc5f
mov esi, eax
mov ecx, eax
mov edx, ebx
call fcn.0041f852
lea ecx, [esp + 0x30]
xor eax, eax
lea edx, [edi + 0x46]
mov dword [ecx], 1
mov dword [ecx + 4], eax
mov dword [ecx + 8], eax
mov eax, str.e_0mq
movsd xmm0, qword [edx]
movsd xmm1, qword [edx + 6]
movsd qword [esp + 0x4e], xmm1
movsd qword [esp + 0x48], xmm0
mov dl, byte [edi + 0x46]
mov dh, byte [edi + 0x4a]
xor dl, 3
xor dh, 3
or dh, dl
mov dl, byte [edi + 0x4e]
xor dl, 3
or dl, dh
sete dl
cmp word [edi + 0x52], 0
sete dh
and dh, dl
mov dl, dh
xor dl, 1
movzx ebx, dl
shl ebx, 2
test dh, dh
mov edx, 0x4cc61c
cmovne eax, edx
mov dword [esp + 0x158], eax
mov dword [esp + 0x15c], ebx
lea eax, [edi + 0x54]
movsd xmm0, qword [eax]
movsd xmm1, qword [eax + 6]
movsd qword [esp + 0x6e], xmm1
movsd qword [esp + 0x68], xmm0
mov al, byte [edi + 0x54]
mov ah, byte [edi + 0x58]
xor al, 3
xor ah, 3
or ah, al
mov al, byte [edi + 0x5c]
xor al, 3
or al, ah
sete al
cmp word [edi + 0x60], 0
mov dword [esp + 0xb0], 0x4bfadc
mov dword [esp + 0xb4], 6
sete ah
and ah, al
mov al, ah
xor al, 1
movzx edi, al
shl edi, 2
test ah, ah
mov eax, str.e_0mq
cmovne eax, edx
lea edx, [esp + 0x120]
mov dword [esp + 0x148], eax
lea eax, [esp + 0x48]
mov dword [esp + 0x14c], edi
lea edi, [esp + 0x68]
mov dword [esp + 0x170], eax
mov eax, 0x416666
mov dword [esp + 0x174], eax
mov dword [esp + 0x178], edx
lea edx, [esp + 0x158]
mov dword [esp + 0x17c], 0x4056f6
mov dword [esp + 0x180], edx
mov edx, 0x49c571
mov dword [esp + 0x184], edx
mov dword [esp + 0x188], edi
mov dword [esp + 0x18c], eax
lea eax, [esp + 0x148]
mov dword [esp + 0x190], eax
xor eax, eax
mov dword [esp + 0x194], edx
mov dword [esp + 0xc0], eax
lea eax, [esp + 0x170]
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], 5
mov edx, 0x4be9d8
lea eax, [esp + 0xb0]
push eax
call fcn.00447a70
add esp, 4
movsd xmm0, qword [esp + 0x120]
mov eax, dword [esp + 0x128]
mov byte [esp + 0xb0], 1
mov byte [esp + 0xb4], 2
movsd qword [esp + 0x173], xmm0
mov dword [esp + 0x17b], eax
movsd xmm0, qword [esp + 0x170]
movsd xmm1, qword [esp + 0x177]
movsd qword [esp + 0xb5], xmm0
movsd qword [esp + 0xbc], xmm1
mov al, byte [0x4e4158]
mov ecx, 0xc
mov edx, 4
call fcn.00413060
test eax, eax
je 0x434363
mov ecx, dword [esp + 0x38]
lea edi, [esp + 0x170]
mov dword [eax + 8], ecx
movsd xmm0, qword [esp + 0x30]
movsd qword [eax], xmm0
movsd xmm0, qword [esp + 0xb0]
movsd xmm1, qword [esp + 0xb8]
mov ecx, dword [esp + 0xc0]
movsd qword [edi], xmm0
movsd qword [edi + 8], xmm1
mov dword [edi + 0x10], ecx
mov byte [edi + 0x14], 0xe
mov byte [edi + 0x18], 5
mov dword [edi + 0x1c], eax
xor eax, eax
inc eax
mov dword [edi + 0x20], eax
mov dword [edi + 0x24], eax
mov ecx, esi
mov edx, edi
call fcn.0041fd78
cmp dword [esp + 0xa0], 0
je 0x432b93
mov eax, dword [esp + 0xa8]
movsd xmm0, qword [esp + 0xa0]
mov dword [esp + 0x17c], eax
movsd qword [esp + 0x174], xmm0
mov byte [esp + 0x170], 4
mov edx, 0xf
mov ecx, esi
push edi
call fcn.00420059
add esp, 4
mov eax, dword [esp + 4]
test eax, eax
je 0x433fb5
cmp dword [esp + 0x130], 0
je 0x433fb5
push dword [esp + 0x12c]
jmp 0x433fa8
lea ecx, [esp + 0x170]
lea edx, [esp + 0x68]
mov dword [edx], esi
movsd xmm0, qword [ecx + 8]
movsd xmm1, qword [ecx + 0x10]
mov edi, dword [ecx + 0x18]
mov esi, dword [ecx]
movsd qword [esp + 0xbc], xmm0
movsd qword [esp + 0xc4], xmm1
mov dword [esp + 0xcc], edi
mov dword [esp + 0xb4], esi
mov dword [esp + 0xb0], esi
mov dword [esp + 0xb8], eax
lea eax, [esp + 0xb0]
push eax
call fcn.004199da
add esp, 4
mov esi, dword [esp + 0x178]
movsd xmm0, qword [esp + 0x17c]
movsd xmm1, qword [esp + 0x184]
mov eax, dword [esp + 0x18c]
test esi, esi
movsd qword [esp + 0x48], xmm0
movsd qword [esp + 0x50], xmm1
mov dword [esp + 0x58], eax
je 0x432c69
mov eax, dword [esp + 0x58]
movsd xmm0, qword [esp + 0x48]
movsd xmm1, qword [esp + 0x50]
mov dword [esp + 0x7c], eax
movsd qword [esp + 0x74], xmm1
movsd qword [esp + 0x6c], xmm0
jmp 0x432c6b
xor esi, esi
mov dword [esp + 0x68], esi
lea ecx, [esp + 0x108]
call fcn.0041c598
test esi, esi
je 0x432cd5
mov eax, dword [esp + 0x114]
mov dword [esp + 4], esi
mov ebx, dword [eax + 0x60]
test ebx, ebx
je 0x432e14
mov eax, dword [esp + 0x114]
mov edi, dword [esp + 0x70]
shl ebx, 4
mov esi, dword [eax + 0x58]
cmp dword [esi], 1
jne 0x432cc8
cmp dword [esi + 8], edi
jne 0x432cc8
push edi
push dword [esp + 8]
push dword [esi + 4]
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x432de4
add esi, 0x10
add ebx, 0xfffffff0
jne 0x432ca6
jmp 0x432e14
mov dword [esp + 0xb0], 0
jmp 0x432ee5
mov eax, dword [esp]
mov ebx, dword [eax + 8]
mov ecx, dword [ebx + 0x4c]
imul eax, dword [ebx + 0x54], 0x11c
test eax, eax
je 0x43323b
mov edx, ecx
add eax, 0xfffffee4
add ecx, 0x11c
cmp dword [edx + 0x108], 0
jne 0x432cf5
cmp dword [edx + 0x34], 0x110000
jne 0x432cf5
mov edi, dword [esp + 4]
mov edx, esi
mov ecx, edi
call fcn.00444475
mov cl, 1
test al, al
mov dword [esp + 0x14], ecx
jne 0x433243
mov ecx, edi
mov edx, esi
call fcn.00444511
mov dword [esp + 0x14], eax
jmp 0x433243
mov eax, dword [esp + 0xb4]
mov esi, dword [esp + 0xb8]
mov dword [esp + 4], eax
mov ecx, esi
call fcn.00416d74
mov edi, eax
mov ebx, edx
push esi
push dword [esp + 8]
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov dword [esp + 0x48], edi
mov dword [esp + 0x4c], ebx
mov dword [esp + 0x50], esi
mov edi, dword [esp]
lea ecx, [edi + 0x7c]
call fcn.0041f502
test eax, eax
mov ecx, 0x4bf048
lea edx, [esp + 0xb0]
cmovne ecx, eax
xor eax, eax
mov dword [edx], edi
mov dword [edx + 4], ecx
mov dword [edx + 8], eax
lea esi, [esp + 0x68]
mov ecx, esi
push eax
push 0x4cc61c
call fcn.0041f597
add esp, 8
lea edx, [esp + 0x48]
mov ecx, edi
push esi
call fcn.004366fe
add esp, 4
mov esi, eax
mov dword [esp + 0x20], 0
lea ecx, [esp + 0x170]
call fcn.0041c9d6
jmp 0x433179
mov ecx, dword [esi + 0xc]
mov esi, dword [esp + 0x114]
mov edx, dword [esi + 0x54]
cmp edx, ecx
jbe 0x4340fa
imul eax, ecx, 0x11c
add eax, dword [esi + 0x4c]
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp]
push 2
push eax
call fcn.0043846c
add esp, 8
mov edx, dword [esp + 4]
mov eax, dword [esp + 0x6c]
mov ecx, dword [esp + 0x70]
mov edi, dword [esp + 0x74]
mov esi, dword [esp + 0x78]
mov ebx, dword [esp + 0x7c]
mov dword [esp + 0x30], edx
mov dword [esp + 0x34], eax
xor eax, eax
mov dword [esp + 0x38], ecx
lea edx, [esp + 0x170]
lea ecx, [esp + 0x108]
inc eax
mov dword [edx], 0x4c000c
mov dword [edx + 4], eax
mov dword [edx + 0x10], 0
mov dword [edx + 8], ecx
mov dword [edx + 0xc], eax
lea eax, [esp + 0x30]
mov dword [esp + 0x108], eax
mov dword [esp + 0x10c], 0x4056f6
lea ecx, [esp + 0x48]
call fcn.00413860
movsd xmm0, qword [esp + 0x48]
mov eax, dword [esp + 0x50]
cmp dword [esp + 0x34], 0
movsd qword [esp + 0x170], xmm0
mov dword [esp + 0x178], eax
je 0x432eb0
push dword [esp + 0x30]
push 0
push dword [0x4e4100]
call sub.kernel32.dll_HeapFree
movsd xmm0, qword [esp + 0x170]
mov eax, dword [esp + 0x178]
movsd qword [esp + 0xb0], xmm0
mov dword [esp + 0xb8], eax
mov dword [esp + 0xbc], edi
mov dword [esp + 0xc0], esi
mov dword [esp + 0xc4], ebx
mov edi, dword [esp + 0x114]
lea ecx, [esp + 0x108]
mov edx, edi
call fcn.00423eac
mov esi, dword [esp + 0x1c]
mov eax, dword [esi + 0x20]
mov ecx, dword [esi + 0x28]
lea edx, [eax + ecx*8]
lea ecx, [esp + 0x48]
mov dword [ecx], eax
mov dword [ecx + 4], edx
mov dword [ecx + 8], esi
mov dword [ecx + 0xc], edi
call fcn.004285b9
mov esi, eax
test eax, eax
je 0x432fbf
mov edi, edx
mov ecx, 4
call fcn.00425643
mov dword [eax], esi
mov dword [eax + 4], edi
xor edi, edi
lea ecx, [esp + 0x30]
mov dword [esp + 4], eax
movsd xmm0, qword [esp + 0x48]
movsd xmm1, qword [esp + 0x50]
mov dword [ecx], eax
lea eax, [esp + 0x170]
inc edi
mov dword [ecx + 4], edx
mov dword [ecx + 8], 1
movsd qword [eax + 8], xmm1
movsd qword [eax], xmm0
lea ecx, [esp + 0x170]
call fcn.004285b9
mov esi, eax
test eax, eax
je 0x432fad
cmp edi, dword [esp + 0x34]
mov ebx, edx
jne 0x432f9b
mov edx, edi
lea ecx, [esp + 0x30]
push 1
call fcn.00428a8c
add esp, 4
mov eax, dword [esp + 0x30]
mov dword [esp + 4], eax
mov eax, dword [esp + 4]
mov dword [eax + edi*8], esi
mov dword [eax + edi*8 + 4], ebx
inc edi
mov dword [esp + 0x38], edi
jmp 0x432f69
mov eax, dword [esp + 0x30]
mov ecx, dword [esp + 0x34]
mov dword [esp + 4], eax
mov dword [esp + 0xc], ecx
jmp 0x432fd1
mov dword [esp + 0xc], 0
mov dword [esp + 4], 4
xor edi, edi
mov ecx, dword [esp + 0x114]
cmp dword [esp + 0xb0], 0
mov eax, dword [ecx + 0x4c]
mov ecx, dword [ecx + 0x54]
je 0x433021
test ecx, ecx
je 0x43301d
lea edx, [eax + 0x108]
imul esi, ecx, 0x11c
cmp dword [edx], 0
jne 0x43300f
cmp dword [edx - 0xd4], 0x110000
jne 0x43300f
test byte [edx - 3], 3
jne 0x433021
add edx, 0x11c
add esi, 0xfffffee4
jne 0x432ff8
xor ebx, ebx
jmp 0x43304d
imul ecx, ecx, 0x11c
test ecx, ecx
setne bl
je 0x43304d
mov edx, eax
add ecx, 0xfffffee4
add eax, 0x11c
cmp dword [edx + 0x108], 0
jne 0x433027
cmp dword [edx + 0x34], 0x110000
jne 0x433027
lea eax, [esp + 0x12c]
lea edx, [esp + 0x170]
lea ecx, [esp + 0x30]
mov dword [esp + 0x30], eax
xor eax, eax
mov dword [esp + 0x34], 0x49c571
mov dword [edx], 0x4c000c
inc eax
mov dword [edx + 4], eax
mov dword [edx + 0x10], 0
mov dword [edx + 8], ecx
mov dword [edx + 0xc], eax
lea ecx, [esp + 0x48]
call fcn.00413860
mov eax, dword [esp + 0x50]
movsd xmm0, qword [esp + 0x48]
mov esi, dword [esp + 0x114]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0xb0]
movsd qword [esp + 0x30], xmm0
lea ecx, [esi + 0x7c]
mov dword [esp + 0x10], eax
call fcn.0041f502
test eax, eax
mov ecx, 0x4bf048
lea edx, [esp + 0x170]
cmovne ecx, eax
lea eax, [esp + 0x108]
mov dword [edx], esi
mov dword [edx + 4], ecx
mov dword [edx + 8], eax
lea ecx, [esp + 0x48]
push edi
push dword [esp + 8]
call fcn.0041f597
add esp, 8
mov ecx, esi
movzx eax, bl
lea edx, [esp + 0x30]
lea esi, [esp + 0x48]
push esi
push eax
lea eax, [esp + 0xb8]
push eax
call fcn.00438a28
add esp, 0xc
cmp dword [esp + 0xc], 0
mov esi, eax
je 0x433125
push dword [esp + 4]
push 0
push dword [0x4e4100]
call sub.kernel32.dll_HeapFree
lea ecx, [esp + 0x108]
call fcn.004241bd
lea ecx, [esp + 0xa0]
call fcn.0041c598
mov eax, dword [esp + 0x13c]
cmp eax, dword [esp + 0x140]
je 0x433161
push dword [esp + 0x118]
push 0
push dword [0x4e4100]
call sub.kernel32.dll_HeapFree
cmp dword [esp + 0x44], 0
je 0x433179
push dword [esp + 0x20]
push 0
push dword [0x4e4100]
call sub.kernel32.dll_HeapFree
mov eax, esi
mov esi, eax
mov eax, esi
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov esi, dword [esp + 0xc]
mov ecx, esi
call fcn.00416d74
mov edi, edx
push esi
push dword [esp + 8]
mov dword [esp + 0x20], eax
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov edx, dword [esp]
lea eax, [esp + 0xd0]
xor ecx, ecx
mov dword [esp + 0x24], edi
mov dword [eax], 4
mov dword [eax + 4], ecx
mov dword [eax + 8], ecx
mov dword [eax + 0xc], 8
mov dword [eax + 0x10], ecx
mov dword [eax + 0x14], ecx
mov dword [eax + 0x18], ecx
mov dword [esp + 0x68], eax
mov dword [esp + 0x6c], 0x4cc61c
mov dword [eax - 0x20], 2
mov dword [esp + 0x70], ecx
mov edx, dword [edx + 8]
mov ecx, dword [edx + 0x144]
lea eax, [edx + 0x10]
or ecx, dword [edx + 0x148]
cmp dword [edx + 0x10], 5
mov edx, 0x4bed30
cmovne edx, eax
bt ecx, 0xa
jae 0x43434a
mov esi, dword [edx]
mov eax, 0x4cc61c
mov ecx, 0x4bef50
mov esi, dword [esi*4 + 0x435188]
add esi, dword [esp + 0x94]
jmp esi
mov esi, dword [esp + 0xc]
mov dword [esp + 0x14], 0
cmp dword [ebx + 0x6c], 0
je 0x433edd
cmp byte [esp + 0x90], 0
je 0x43336a
mov eax, dword [ebx + 0x144]
or eax, dword [ebx + 0x148]
shr eax, 0xd
and eax, 1
test al, al
je 0x43336a
mov dword [esp + 0x10], ebx
mov edx, dword [esp + 4]
lea ecx, [esp + 0x48]
push esi
call fcn.00498ea0
add esp, 4
mov esi, dword [esp + 0x48]
mov edi, dword [esp + 0x4c]
mov ebx, dword [esp + 0x50]
mov ecx, ebx
mov dword [esp + 4], esi
call fcn.00416d74
mov dword [esp + 0xc], edx
test esi, esi
cmovne edi, esi
push ebx
push edi
push eax
mov edi, eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov eax, dword [esp + 0xc]
mov ecx, dword [esp + 0x1c]
mov dword [esp + 0x30], edi
mov dword [esp + 8], edi
mov edi, dword [esp]
lea edx, [esp + 0x170]
mov dword [esp + 0x34], eax
mov esi, eax
mov eax, dword [ecx + 0x20]
mov ecx, dword [ecx + 0x28]
mov dword [esp + 0x38], ebx
lea ecx, [eax + ecx*8]
mov dword [edx], eax
mov eax, dword [edi + 8]
mov dword [edx + 4], ecx
mov dword [edx + 8], eax
lea ebx, [esp + 0x68]
mov ecx, ebx
call fcn.004294a7
mov edi, dword [edi + 8]
lea ecx, [edi + 0x7c]
call fcn.0041f502
test eax, eax
mov ecx, 0x4bf048
lea edx, [esp + 0x170]
cmovne ecx, eax
xor eax, eax
mov dword [edx], edi
mov dword [edx + 4], ecx
mov dword [edx + 8], eax
lea edi, [esp + 0xb0]
mov ecx, edi
push eax
push 0x4cc61c
call fcn.0041f597
add esp, 8
mov ecx, dword [esp + 0x10]
lea edx, [esp + 0x30]
push edi
push ebx
call fcn.0043c512
add esp, 8
cmp dword [esp + 4], 0
mov esi, eax
je 0x433fb5
cmp dword [esp + 0x4c], 0
je 0x433fb5
push dword [esp + 0x48]
jmp 0x433fa8
mov edx, dword [esp + 4]
lea ecx, [esp + 0xb0]
push esi
call fcn.00498ea0
add esp, 4
mov esi, dword [esp + 0xb0]
mov ebx, dword [esp + 0xb4]
mov ecx, dword [esp + 0xb8]
mov dword [esp + 0x24], ecx
call fcn.00416d74
mov dword [esp + 0x10], edx
mov edi, eax
test esi, esi
cmovne ebx, esi
mov esi, dword [esp + 0x24]
push esi
push ebx
push eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov eax, dword [esp]
mov edx, 2
mov eax, dword [eax + 8]
mov ecx, dword [eax + 0x64]
imul eax, dword [eax + 0x6c], 0x16c
mov dword [esp + 0x170], edx
mov dword [esp + 0x184], edx
add eax, ecx
mov dword [esp + 0x198], ecx
mov dword [esp + 0x19c], eax
mov edx, edi
lea eax, [esp + 0x170]
lea ecx, [esp + 0x314]
push eax
push esi
call fcn.0043ba84
add esp, 8
cmp dword [esp + 0x10], 0
mov esi, dword [esp + 0xc]
je 0x43341c
push edi
push 0
push dword [0x4e4100]
call sub.kernel32.dll_HeapFree
mov eax, dword [esp + 0xb0]
test eax, eax
je 0x43343f
cmp dword [esp + 0xb4], 0
je 0x43343f
push eax
push 0
push dword [0x4e4100]
call sub.kernel32.dll_HeapFree
mov eax, dword [esp]
cmp dword [esp + 0x31c], 0
mov edi, dword [eax + 8]
mov dword [esp + 0x10], edi
je 0x433acb
mov edx, dword [esp + 4]
lea ecx, [esp + 0x308]
push esi
call fcn.00498ea0
add esp, 4
mov eax, dword [esp + 0x308]
mov ebx, dword [esp + 0x30c]
mov esi, dword [esp + 0x310]
mov dword [esp + 4], eax
mov ecx, esi
call fcn.00416d74
mov dword [esp + 0xc], edx
mov edi, eax
mov eax, dword [esp + 4]
test eax, eax
cmovne ebx, eax
push esi
push ebx
push edi
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov eax, dword [esp + 0xc]
mov dword [esp + 0x164], edi
movsd xmm0, qword [esp + 0x314]
mov dword [esp + 0x168], eax
mov eax, dword [esp + 0x31c]
mov dword [esp + 0x16c], esi
movsd qword [esp + 0x158], xmm0
mov dword [esp + 0x160], eax
mov eax, dword [esp]
mov eax, dword [eax + 8]
mov edi, dword [eax + 0xa8]
mov ebx, dword [eax + 0x20]
lea ecx, [eax + 0xac]
add eax, 0x20
test edi, edi
cmovne eax, ecx
mov esi, dword [eax + 4]
mov ecx, esi
call fcn.00416d74
mov dword [esp + 4], edx
test edi, edi
cmovne ebx, edi
push esi
push ebx
push eax
mov edi, eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov eax, dword [esp + 4]
mov dword [esp + 0x148], edi
mov dword [esp + 0x14c], eax
mov eax, dword [esp]
mov dword [esp + 0x150], esi
mov esi, dword [eax + 8]
lea ecx, [esi + 0x7c]
call fcn.0041f502
test eax, eax
mov ecx, 0x4bf048
lea edx, [esp + 0x12c]
cmovne ecx, eax
xor eax, eax
mov dword [edx], esi
mov dword [edx + 4], ecx
mov dword [edx + 8], eax
lea ecx, [esp + 0x120]
push eax
push 0x4cc61c
call fcn.0041f597
add esp, 8
mov edi, dword [esp + 0x10]
lea ecx, [edi + 0x7c]
call fcn.0041f502
test eax, eax
mov ebx, 0x4bf048
cmovne ebx, eax
mov ecx, 2
call fcn.0041fc5f
mov esi, eax
mov ecx, eax
mov edx, edi
call fcn.0041f852
xor edi, edi
cmp byte [esp + 0x14], 0
mov dword [esp + 0xa0], 4
mov dword [esp + 0xa4], edi
mov dword [esp + 0xa8], edi
je 0x43393a
xor ecx, ecx
lea eax, [esp + 0x108]
inc ecx
mov dword [eax], ecx
mov dword [eax + 4], edi
mov dword [eax + 8], edi
lea ecx, [ebx + 0x54]
mov al, 3
movsd xmm0, qword [ecx]
movsd xmm1, qword [ecx + 6]
movsd qword [esp + 0x36], xmm1
movsd qword [esp + 0x30], xmm0
mov cl, byte [ebx + 0x54]
mov ch, byte [ebx + 0x58]
xor cl, al
xor ch, al
or ch, cl
mov cl, byte [ebx + 0x5c]
xor cl, al
mov eax, str.e_0mq
or cl, ch
sete cl
cmp word [ebx + 0x60], 0
sete ch
and ch, cl
mov cl, ch
xor cl, 1
movzx edx, cl
shl edx, 2
test ch, ch
mov ecx, 0x4cc61c
cmovne eax, ecx
lea ecx, [esp + 0x334]
mov dword [ecx], eax
mov dword [ecx + 4], edx
lea eax, [ebx + 0x46]
movsd xmm0, qword [eax]
movsd xmm1, qword [eax + 6]
mov ah, 3
movsd qword [esp + 0x4e], xmm1
movsd qword [esp + 0x48], xmm0
mov al, byte [ebx + 0x46]
mov dl, byte [ebx + 0x4a]
xor al, ah
xor dl, ah
or dl, al
mov al, byte [ebx + 0x4e]
xor al, ah
or al, dl
sete al
cmp word [ebx + 0x52], 0
mov ebx, 0x4cc61c
mov dword [esp + 0x68], 0x4bf9f8
mov dword [esp + 0x6c], 8
sete dl
and dl, al
mov eax, edx
xor al, 1
movzx eax, al
shl eax, 2
test dl, dl
mov edx, str.e_0mq
cmovne edx, ebx
lea ebx, [esp + 0x33c]
mov dword [ebx], edx
mov dword [ebx + 4], eax
lea eax, [esp + 0x30]
lea edx, [esp + 0x164]
mov dword [esp + 0xb0], eax
mov eax, 0x416666
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], edx
mov edx, 0x4056f6
lea eax, [esp + 0x48]
mov dword [esp + 0xbc], edx
mov dword [esp + 0xc0], ecx
mov ecx, 0x49c571
mov dword [esp + 0xc4], ecx
mov dword [esp + 0xc8], eax
mov eax, 0x416666
mov dword [esp + 0xcc], eax
lea eax, [esp + 0x148]
mov dword [esp + 0xd0], eax
mov dword [esp + 0xd4], edx
mov dword [esp + 0xd8], ebx
mov dword [esp + 0xdc], ecx
mov ebx, 2
mov eax, 1
mov ecx, 0x20
mov dl, 3
mov dword [esp + 0x170], ebx
mov dword [esp + 0x178], ebx
mov dword [esp + 0x17c], eax
mov dword [esp + 0x180], ecx
mov dword [esp + 0x184], edi
mov dword [esp + 0x188], edi
mov byte [esp + 0x18c], dl
mov dword [esp + 0x190], ebx
mov dword [esp + 0x198], ebx
mov dword [esp + 0x19c], eax
mov dword [esp + 0x1a0], ecx
mov dword [esp + 0x1a4], eax
mov dword [esp + 0x1a8], edi
mov byte [esp + 0x1ac], dl
mov dword [esp + 0x1b0], ebx
mov dword [esp + 0x1b8], ebx
mov dword [esp + 0x1bc], eax
mov dword [esp + 0x1c0], ecx
mov dword [esp + 0x1c4], ebx
mov dword [esp + 0x1c8], edi
mov byte [esp + 0x1cc], dl
mov dword [esp + 0x1d0], ebx
mov dword [esp + 0x1d8], ebx
mov dword [esp + 0x1dc], eax
mov dword [esp + 0x1e0], ecx
mov dword [esp + 0x1e4], 3
mov dword [esp + 0x1e8], edi
mov byte [esp + 0x1ec], dl
mov dword [esp + 0x1f0], ebx
mov dword [esp + 0x1f8], ebx
mov dword [esp + 0x1fc], eax
mov dword [esp + 0x200], ecx
mov dword [esp + 0x204], 4
mov dword [esp + 0x208], edi
mov byte [esp + 0x20c], dl
mov dword [esp + 0x210], ebx
mov dword [esp + 0x218], ebx
mov dword [esp + 0x21c], eax
mov dword [esp + 0x220], ecx
mov dword [esp + 0x224], eax
mov dword [esp + 0x228], edi
mov byte [esp + 0x22c], dl
mov dword [esp + 0x230], ebx
mov dword [esp + 0x238], ebx
mov dword [esp + 0x23c], eax
lea eax, [esp + 0x170]
mov dword [esp + 0x240], ecx
mov dword [esp + 0x244], 5
mov dword [esp + 0x248], edi
mov byte [esp + 0x24c], dl
mov dword [esp + 0x78], eax
lea eax, [esp + 0xb0]
mov dword [esp + 0x7c], 7
mov dword [esp + 0x70], eax
mov dword [esp + 0x74], 6
mov edx, 0x4be9d8
lea eax, [esp + 0x68]
lea ecx, [esp + 0x108]
push eax
call fcn.00447a70
add esp, 4
mov edx, dword [esp + 0xa8]
mov eax, dword [esp + 0x108]
mov ecx, dword [esp + 0x110]
mov edi, dword [esp + 0x10c]
cmp edx, dword [esp + 0xa4]
mov dword [esp + 4], eax
mov dword [esp + 0xc], ecx
jne 0x433915
lea ecx, [esp + 0xa0]
call fcn.0042b827
mov edx, dword [esp + 0xa8]
mov eax, dword [esp + 0xa0]
mov ebx, dword [esp + 4]
lea ecx, [edx + edx*2]
inc edx
mov dword [eax + ecx*4], ebx
mov ebx, dword [esp + 0xc]
mov dword [eax + ecx*4 + 4], edi
mov dword [eax + ecx*4 + 8], ebx
mov dword [esp + 0xa8], edx
movsd xmm0, qword [esp + 0x164]
mov eax, dword [esp + 0x16c]
lea edi, [esp + 0x170]
mov dword [edi + 0xb], eax
movsd qword [edi + 3], xmm0
mov eax, dword [esp + 0x160]
movsd xmm0, qword [edi]
movsd qword [esp + 0x48], xmm0
movsd xmm0, qword [edi + 7]
mov dword [edi + 0xb], eax
mov eax, dword [esp + 0xa8]
movsd qword [esp + 0x4f], xmm0
movsd xmm0, qword [esp + 0x158]
movsd xmm2, qword [esp + 0x48]
movsd qword [edi + 3], xmm0
movsd xmm0, qword [edi]
movsd qword [esp + 0x68], xmm0
movsd xmm0, qword [edi + 7]
mov dword [edi + 0xb], eax
mov al, 1
mov dword [esp + 4], eax
movsd qword [esp + 0x6f], xmm0
movsd xmm0, qword [esp + 0xa0]
movsd xmm3, qword [esp + 0x68]
movsd qword [edi + 3], xmm0
movsd xmm0, qword [edi]
movsd xmm1, qword [edi + 7]
mov byte [edi], 0
mov byte [edi + 4], 2
movsd qword [esp + 0xb0], xmm0
movsd qword [esp + 0xb7], xmm1
movsd xmm1, qword [esp + 0x4f]
movsd qword [edi + 0xc], xmm1
movsd xmm1, qword [esp + 0x6f]
movsd qword [edi + 5], xmm2
mov byte [edi + 0x14], 0xa
mov byte [edi + 0x18], 3
movsd xmm2, qword [esp + 0xb0]
movsd qword [edi + 0x20], xmm1
movsd xmm1, qword [esp + 0xb7]
movsd qword [edi + 0x19], xmm3
mov byte [edi + 0x28], 0xe
mov byte [edi + 0x2c], 5
movsd qword [edi + 0x34], xmm1
movsd qword [edi + 0x2d], xmm2
mov ecx, esi
mov edx, edi
mov bl, 1
call fcn.00427040
cmp dword [esp + 0x120], 0
je 0x433a82
mov eax, dword [esp + 0x128]
movsd xmm0, qword [esp + 0x120]
xor ebx, ebx
mov dword [esp + 0x17c], eax
movsd qword [esp + 0x174], xmm0
mov byte [esp + 0x170], 4
mov edx, 0xf
mov ecx, esi
push edi
call fcn.00420059
add esp, 4
cmp dword [esp + 0x14c], 0
je 0x433aa0
push dword [esp + 0x148]
push 0
push dword [0x4e4100]
call sub.kernel32.dll_HeapFree
mov eax, dword [esp + 0x308]
test eax, eax
je 0x433fb5
cmp dword [esp + 0x30c], 0
je 0x433fb5
jmp 0x433fa7
mov eax, dword [esp + 0x64]
jmp 0x43317b
mov ecx, dword [edi + 0x4c]
imul eax, dword [edi + 0x54], 0x11c
test eax, eax
je 0x433b0e
mov edx, ecx
add eax, 0xfffffee4
add ecx, 0x11c
cmp dword [edx + 0x108], 0
jne 0x433ad5
cmp dword [edx + 0x34], 0x110000
jne 0x433ad5
mov eax, dword [edi + 0x144]
or eax, dword [edi + 0x148]
bt eax, 8
jae 0x433ecb
mov edx, dword [esp + 4]
lea ecx, [esp + 0x68]
push esi
call fcn.00498ea0
add esp, 4
mov esi, dword [esp + 0x68]
mov ebx, dword [esp + 0x6c]
mov edi, dword [esp + 0x70]
mov ecx, edi
call fcn.00416d74
mov dword [esp + 4], edx
test esi, esi
cmovne ebx, esi
push edi
push ebx
push eax
mov esi, eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov eax, dword [esp + 4]
mov dword [esp + 0x48], esi
mov dword [esp + 0xc], esi
mov dword [esp + 0x4c], eax
mov ebx, eax
mov eax, dword [esp]
mov dword [esp + 0x50], edi
mov esi, dword [eax + 8]
lea ecx, [esi + 0x7c]
call fcn.0041f502
test eax, eax
mov ecx, 0x4bf048
lea edx, [esp + 0x170]
cmovne ecx, eax
xor eax, eax
mov dword [edx], esi
mov dword [edx + 4], ecx
mov dword [edx + 8], eax
lea edi, [esp + 0xb0]
mov ecx, edi
push eax
push 0x4cc61c
call fcn.0041f597
add esp, 8
mov ecx, dword [esp + 0x10]
lea edx, [esp + 0x48]
push edi
call fcn.004366fe
add esp, 4
mov esi, eax
mov eax, dword [esp + 0x68]
test eax, eax
je 0x433bce
cmp dword [esp + 0x6c], 0
je 0x433bce
push eax
push 0
push dword [0x4e4100]
call sub.kernel32.dll_HeapFree
lea ecx, [esp + 0x314]
call fcn.0041c598
jmp 0x433fb5
lea ecx, [esp + 0x314]
call fcn.0041c598
mov eax, dword [esp]
mov ebx, dword [eax + 8]
mov dword [esp + 0x10], ebx
mov edx, dword [esp + 4]
lea ecx, [esp + 0x48]
push esi
call fcn.00498ea0
add esp, 4
mov esi, dword [esp + 0x48]
mov edi, dword [esp + 0x4c]
mov ebx, dword [esp + 0x50]
mov ecx, ebx
call fcn.00416d74
mov dword [esp + 4], edx
test esi, esi
cmovne edi, esi
push ebx
push edi
push eax
mov esi, eax
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov eax, dword [esp + 4]
mov dword [esp + 0x30], esi
mov dword [esp + 0xc], esi
mov dword [esp + 0x170], 0
mov dword [esp + 0x34], eax
mov eax, dword [esp]
mov dword [esp + 0x38], ebx
mov esi, dword [eax + 8]
lea ecx, [esi + 0x7c]
call fcn.0041f502
test eax, eax
mov ecx, 0x4bf048
lea edx, [esp + 0xb0]
cmovne ecx, eax
xor eax, eax
mov dword [edx], esi
mov dword [edx + 4], ecx
mov dword [edx + 8], eax
lea edi, [esp + 0x68]
mov ecx, edi
push eax
push 0x4cc61c
call fcn.0041f597
add esp, 8
movzx eax, byte [esp + 0x14]
mov ecx, dword [esp + 0x10]
lea edx, [esp + 0x30]
push edi
push eax
lea eax, [esp + 0x178]
push eax
call fcn.00438a28
add esp, 0xc
mov esi, eax
mov eax, dword [esp + 0x48]
test eax, eax
je 0x433fb5
cmp dword [esp + 0x4c], 0
je 0x433fb5
push eax
push 0
push dword [0x4e4100]
call sub.kernel32.dll_HeapFree
cmp dword [esp + 0x2e0], 5
je 0x433179
mov dword [esp + 0x20], 0
lea ecx, [esp + 0x2e0]
call fcn.0042547b
jmp 0x433179
mov dword [esp + 0x20], 0
push 0x4c0124
call fcn.00446c40
add esp, 4
jmp 0x434379
mov dword [esp + str.Index_out_of_bounds], 0x4c7670
mov edx, 0x4c78a0
jmp 0x434018
mov edx, 0x4c78b0
mov dword [esp + str.Index_out_of_bounds], 0x4c7670
mov ecx, dword [esp + 0x98]
xor eax, eax
mov dword [ecx + 4], 1
mov dword [ecx + 0x10], eax
mov dword [ecx + 8], 0x4cc61c
mov dword [ecx + 0xc], eax
call fcn.004468e0
jmp 0x434379
mov esi, 0x4c78c0
mov edx, eax
mov ecx, dword [esp + 0x18]
push esi
call fcn.00448980
add esp, 4
jmp 0x434379
mov esi, 0x4c78c0
mov ecx, eax
mov edx, dword [esp + 0x60]
push esi
call fcn.004475b0
add esp, 4
jmp 0x434379
lea ecx, [esp + 0x170]
xor eax, eax
mov dword [ecx], str.Index_out_of_bounds
mov dword [ecx + 4], 1
mov dword [ecx + 0x10], eax
mov dword [ecx + 8], 0x4cc61c
mov dword [ecx + 0xc], eax
mov edx, 0x4be7f4
call fcn.004468e0
jmp 0x434379
push 0x4c0124
call fcn.00446c40
add esp, 4
jmp 0x434379
mov edx, 0x2b
mov ecx, str.called__Option::unwrap____on_a__None__value_rustc_82e1608dfa6e0b5569232559e3d385fea5a93112librarycore_srcio_borrowed_buf.rs_rustc_82e1608dfa6e0b5569232559e3d385fea5a93112library_alloc_srccollections_btree_navigate.rs
push 0x4bff7c
call fcn.004478a0
add esp, 4
jmp 0x434379
mov edx, 0x37
mov ecx, str.a_Display_implementation_returned_an_error_unexpectedly
push 0x4c6a24
push 0x4be804
lea eax, [esp + 0x134]
push eax
call fcn.004491d0
add esp, 0xc
jmp 0x434379
push 0x4c0124
call fcn.00446c40
add esp, 4
jmp 0x434379
mov dword [esp + 0x9c], ebx
mov edx, 0x2c
mov ecx, str.assertion_failed:_end___start__end___lenAxL
push 0x4c793c
call fcn.004478a0
add esp, 4
jmp 0x434379
call fcn.004478a0
jmp 0x434e3e
mov ecx, str.Fatal_internal_error._Please_consider_filing_a_bug_report_at_https:__github.com_clap_rs_clap_issues_home_kevin_.cargo_registry_src_index.crates.io_6f17d22bba15001f_clap_builder_4.5.2_src_builder_arg.rs
mov edx, 0x63
push 0x4bfb9c
call fcn.004493b0
jmp 0x434e3e
mov dword [esp + 0x9c], ebx
mov edx, dword [esp + 0x94]
mov ecx, dword [esp + 0x18]
push 0x4c794c
call fcn.00448980
add esp, 4
jmp 0x434379
mov dword [esp + 0x9c], ebx
mov edx, 0x2b
mov ecx, str.called__Option::unwrap____on_a__None__value_rustc_82e1608dfa6e0b5569232559e3d385fea5a93112librarycore_srcio_borrowed_buf.rs_rustc_82e1608dfa6e0b5569232559e3d385fea5a93112library_alloc_srccollections_btree_navigate.rs
push 0x4c78f0
call fcn.004478a0
add esp, 4
jmp 0x434379
mov edx, 0x28
mov ecx, str.internal_error:_entered_unreachable_code
push 0x4bff5c
call fcn.004478a0
add esp, 4
jmp 0x434379
mov ecx, edx
mov dword [esp + 0x9c], ebx
mov esi, 0x4c7890
jmp 0x43405f
mov esi, 0x4c7890
mov dword [esp + 0x9c], ebx
jmp 0x434046
mov edx, 0x2b
mov ecx, str.called__Option::unwrap____on_a__None__value_rustc_82e1608dfa6e0b5569232559e3d385fea5a93112librarycore_srcio_borrowed_buf.rs_rustc_82e1608dfa6e0b5569232559e3d385fea5a93112library_alloc_srccollections_btree_navigate.rs
push 0x4bff8c
call fcn.004478a0
add esp, 4
jmp 0x434379
mov edx, 0x37
mov ecx, str.a_Display_implementation_returned_an_error_unexpectedly
push 0x4c6a24
push 0x4be804
lea eax, [esp + 0x134]
push eax
call fcn.004491d0
add esp, 0xc
jmp 0x434379
movsd xmm0, qword [esp + 0x174]
movsd qword [esp + 0x68], xmm0
mov ecx, str.called__Result::unwrap____on_an__Err__value
mov edx, 0x2b
push 0x4c093c
push 0x4c07f0
lea eax, [esp + 0x70]
push eax
call fcn.004491d0
add esp, 0xc
ud2
mov ecx, 0x4caabe
mov edx, 0x23
push 0x4c08bc
jmp 0x43413e
mov ecx, ebx
push 0x4c0928
call fcn.00446be0
add esp, 4
jmp 0x434379
mov dword [esp + 0x20], 0
mov ecx, esi
push 0x4c0928
call fcn.00446be0
add esp, 4
jmp 0x434379
mov ecx, 4
mov edx, esi
call fcn.00413450
jmp 0x434379
mov edx, 0x2b
mov ecx, str.called__Option::unwrap____on_a__None__value_rustc_82e1608dfa6e0b5569232559e3d385fea5a93112librarycore_srcio_borrowed_buf.rs_rustc_82e1608dfa6e0b5569232559e3d385fea5a93112library_alloc_srccollections_btree_navigate.rs
push 0x4c78d0
call fcn.004478a0
add esp, 4
jmp 0x434379
mov edx, 0x2b
mov ecx, str.called__Option::unwrap____on_a__None__value_rustc_82e1608dfa6e0b5569232559e3d385fea5a93112librarycore_srcio_borrowed_buf.rs_rustc_82e1608dfa6e0b5569232559e3d385fea5a93112library_alloc_srccollections_btree_navigate.rs
push 0x4c78e0
call fcn.004478a0
add esp, 4
jmp 0x434379
mov edx, 0x23
mov ecx, 0x4caabe
push 0x4c08bc
call fcn.004478a0
add esp, 4
jmp 0x434379
mov edx, 0x63
mov ecx, str.Fatal_internal_error._Please_consider_filing_a_bug_report_at_https:__github.com_clap_rs_clap_issues_home_kevin_.cargo_registry_src_index.crates.io_6f17d22bba15001f_clap_builder_4.5.2_src_builder_arg.rs
push 0x4bfe18
call fcn.004493b0
add esp, 4
jmp 0x434379
lea edi, [esp + 0xb4]
mov ecx, 4
mov edx, 0xc
call fcn.00413450
ud2
add esp, 4
ud2
lea ecx, [esp + 0x30]
call fcn.0042547b
jmp 0x433179