Function at 0x4ec770
Capabilities:
Encode data using xor
Encrypt data using speck

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 0x5609ed
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ebx
sub esp, 0x80
push esi
push edi
push 1
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [0x6bb530]
mov dword [eax + 0x20], 0
call fcn.004e5050
call fcn.004ea190
cmp dword [0x6bb5a4], 0xf
mov ecx, 0x6bb590
push 0x80e2
cmova ecx, dword [0x6bb590]
xor edx, edx
call fcn.00522d10
mov eax, dword [0x6ba4fc]
add esp, 4
mov esi, dword [0x6ba4f8]
sub eax, esi
mov dword [ebp - 0x88], 0x6bc918
cmp eax, 0xffffffff
jne 0x4ec80c
mov ecx, 0x6bc918
call fcn.004facf0
jmp 0x4ec819
inc eax
lea ecx, [ebp - 0x88]
push eax
call fcn.004faca0
add eax, esi
mov dword [ebp - 0x80], 0x17
xor edx, edx
mov ecx, 0x7e
div ecx
mov dword [ebp - 0x88], ecx
xorps xmm0, xmm0
inc dl
movsx si, dl
movups xmmword [ebp - 0x2c], xmm0
movzx edx, si
mov eax, esi
xor eax, 0x47
mov word [ebp - 0x78], si
mov word [ebp - 0x76], ax
mov eax, edx
xor eax, 0x47
mov word [ebp - 0x74], ax
mov eax, esi
xor eax, 0x53
mov word [ebp - 0x72], ax
mov eax, esi
xor eax, 0x54
mov word [ebp - 0x70], ax
mov eax, esi
xor eax, 0x2d
mov word [ebp - 0x6e], ax
mov eax, esi
xor eax, 0x57
mov word [ebp - 0x6c], ax
mov eax, edx
xor eax, 0x69
movzx ecx, ax
mov eax, esi
xor eax, 0x69
mov word [ebp - 0x5c], cx
mov word [ebp - 0x6a], ax
mov eax, esi
xor eax, 0x6e
mov word [ebp - 0x56], cx
mov word [ebp - 0x68], ax
mov eax, esi
xor eax, 0x36
mov word [ebp - 0x66], ax
mov eax, esi
xor eax, 0x34
mov word [ebp - 0x64], ax
mov eax, edx
xor eax, 0x2d
mov word [ebp - 0x62], ax
mov eax, edx
xor eax, 0x53
mov word [ebp - 0x60], ax
mov eax, esi
xor eax, 0x68
mov word [ebp - 0x5e], ax
mov eax, esi
xor eax, 0x70
mov word [ebp - 0x5a], ax
mov eax, edx
xor eax, 0x70
mov word [ebp - 0x58], ax
mov eax, edx
xor eax, 0x6e
xor edx, 0x65
mov word [ebp - 0x54], ax
mov eax, esi
xor eax, 0x67
mov word [ebp - 0x4a], dx
mov word [ebp - 0x52], ax
mov eax, esi
xor eax, 0x2e
mov word [ebp - 0x50], ax
mov eax, esi
xor eax, 0x65
mov word [ebp - 0x4e], ax
mov eax, esi
xor eax, 0x78
mov word [ebp - 0x4c], ax
xor eax, eax
mov word [ebp - 0x48], ax
lea edx, [ebp - 0x80]
call fcn.004fac40
mov ecx, dword [ebp - 0x80]
xorps xmm0, xmm0
mov dword [ebp - 0x2c], eax
xor edx, edx
mov dword [ebp - 0x1c], 0x17
mov dword [ebp - 0x18], ecx
movups xmmword [eax], xmm0
movups xmmword [eax + 0x10], xmm0
movq qword [eax + 0x20], xmm0
mov dword [eax + 0x28], 0
mov dword [eax + 0x2c], 0
nop dword [eax]
mov ax, word [ebp + edx - 0x76]
xor ax, si
cmp dword [ebp - 0x18], 7
movzx ecx, ax
lea eax, [ebp - 0x2c]
cmova eax, dword [ebp - 0x2c]
mov word [eax + edx], cx
add edx, 2
cmp edx, 0x2e
jb 0x4ec950
cmp dword [ebp - 0x18], 7
lea ecx, [ebp - 0x2c]
cmova ecx, dword [ebp - 0x2c]
call fcn.00502dd0
mov ecx, dword [ebp - 0x18]
mov byte [ebp - 0x11], al
cmp ecx, 7
jbe 0x4ec9c4
mov edx, dword [ebp - 0x2c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x4ec9b7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4ec9b7
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0055efc1
mov al, byte [ebp - 0x11]
add esp, 8
xor ecx, ecx
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 7
mov word [ebp - 0x2c], cx
test al, al
je 0x4ee39c
mov ecx, dword [0x6bb530]
xor edx, edx
push str.Background
mov eax, dword [ecx + 0x3e48]
movss xmm0, dword [eax + 0x14]
movss dword [ebp - 0x80], xmm0
movss xmm0, dword [eax + 0x18]
mov byte [eax + 0xac], 1
mov eax, dword [ecx + 0x3e48]
movss dword [ebp - 0x8c], xmm0
mov eax, dword [eax + 0x264]
mov dword [ebp - 0x38], eax
mov eax, dword [ecx + 0x47c4]
mov ecx, dword [eax]
call fcn.0051d3a0
mov eax, dword [0x6bb530]
add esp, 4
mov edx, 1
mov eax, dword [eax + 0x47c4]
push str.Foreground
mov ecx, dword [eax]
call fcn.0051d3a0
movss xmm2, dword [ebp - 0x80]
lea ecx, [ebp - 0x24]
movss xmm1, dword [ebp - 0x8c]
movaps xmm0, xmm2
xorps xmm3, xmm3
add esp, 4
addss xmm0, xmm3
movss dword [ebp - 0x50], xmm0
movaps xmm0, xmm1
addss xmm0, xmm3
movss dword [ebp - 0x4c], xmm0
movss xmm0, dword [0x58aa04]
addss xmm2, xmm0
addss xmm1, xmm0
movaps xmm0, xmmword [0x58ab70]
movups xmmword [ebp - 0x24], xmm0
movss dword [ebp - 0x84], xmm2
movss dword [ebp - 0x80], xmm1
call fcn.00518e40
movaps xmm0, xmmword [0x58ab90]
lea ecx, [ebp - 0x24]
mov dword [ebp - 0x8c], eax
movups xmmword [ebp - 0x24], xmm0
call fcn.00518e40
movaps xmm0, xmmword [0x58aba0]
lea ecx, [ebp - 0x24]
mov edi, eax
movups xmmword [ebp - 0x24], xmm0
call fcn.00518e40
movaps xmm0, xmmword [0x58ab70]
lea ecx, [ebp - 0x24]
mov esi, eax
movups xmmword [ebp - 0x24], xmm0
call fcn.00518e40
push dword [ebp - 0x8c]
mov ecx, dword [ebp - 0x38]
push edi
push esi
push eax
lea eax, [ebp - 0x84]
push eax
lea eax, [ebp - 0x50]
push eax
call fcn.0053b9f0
call fcn.004e0180
mov esi, dword [0x6bb530]
lea eax, [ebp - 0x54]
push eax
mov dword [ebp - 0x54], 0
movss xmm0, dword [esi + 0x3788]
lea ecx, [esi + 0x4764]
movss dword [ebp - 0x50], xmm0
call fcn.0052faa0
push 0
mov dword [esi + 0x3788], 0x3f666666
lea eax, [ebp - 0x50]
mov dword [ebp - 0x50], 0x43eb0000
mov dword [ebp - 0x4c], 0x43c80000
push ecx
push eax
mov edx, 1
xor ecx, ecx
call fcn.00520240
add esp, 0xc
test al, al
je 0x4ecee4
mov ecx, dword [0x6bb530]
mov dword [ebp - 0x50], 0x428c0000
mov dword [ebp - 0x4c], 0x420c0000
mov dword [ebp - 0x38], 0x6bc918
mov eax, dword [ecx + 0x3e48]
mov byte [eax + 0xac], 1
mov eax, dword [ecx + 0x3e48]
movss xmm0, dword [eax + 0x14]
subss xmm0, dword [eax + 0x78]
mov byte [eax + 0x131], 1
addss xmm0, dword [0x58a9a8]
movss dword [eax + 0xf0], xmm0
mov eax, dword [0x6ba4fc]
mov esi, dword [0x6ba4f8]
sub eax, esi
cmp eax, 0xffffffff
jne 0x4ecbd7
mov ecx, 0x6bc918
call fcn.004facf0
jmp 0x4ecbe1
inc eax
lea ecx, [ebp - 0x38]
push eax
call fcn.004faca0
mov edi, dword [ebp - 0x88]
add eax, esi
xor edx, edx
mov byte [ebp - 0x34], 0
div edi
mov byte [0x6bc6c3], 0
inc dl
mov cl, dl
mov ch, dl
xor cl, 0xef
mov al, dl
xor al, cl
mov ah, dl
xor ch, 0x92
mov byte [0x6bc6c0], al
mov al, dl
xor ah, 0x8e
xor dl, ch
xor al, ah
mov byte [0x6bc6c2], dl
lea edx, [ebp - 0x50]
push ecx
mov ecx, 0x6bc6c0
mov byte [0x6bc6c1], al
call fcn.00546670
add esp, 4
test al, al
je 0x4ecc42
mov dword [0x5920c8], 1
movss xmm1, dword [0x58aa50]
xorps xmm0, xmm0
call fcn.00528640
mov eax, dword [0x6ba4fc]
mov esi, dword [0x6ba4f8]
sub eax, esi
mov dword [ebp - 0x50], 0x428c0000
mov dword [ebp - 0x4c], 0x420c0000
mov dword [ebp - 0x38], 0x6bc918
cmp eax, 0xffffffff
jne 0x4ecc85
mov ecx, 0x6bc918
call fcn.004facf0
jmp 0x4ecc8f
inc eax
lea ecx, [ebp - 0x38]
push eax
call fcn.004faca0
add eax, esi
mov byte [ebp - 0x34], 0
xor edx, edx
mov byte [0x6bdcd3], 0
div edi
inc dl
mov cl, dl
mov ch, dl
xor cl, 0xef
mov al, dl
xor al, cl
mov ah, dl
xor ch, 0x84
mov byte [0x6bdcd0], al
mov al, dl
xor ah, 0x95
xor dl, ch
xor al, ah
mov byte [0x6bdcd2], dl
lea edx, [ebp - 0x50]
push ecx
mov ecx, 0x6bdcd0
mov byte [0x6bdcd1], al
call fcn.00546670
add esp, 4
test al, al
je 0x4eccea
mov dword [0x5920c8], 2
movss xmm1, dword [0x58aa50]
xorps xmm0, xmm0
call fcn.00528640
mov eax, dword [0x6ba4fc]
mov esi, dword [0x6ba4f8]
sub eax, esi
mov dword [ebp - 0x50], 0x428c0000
mov dword [ebp - 0x4c], 0x420c0000
mov dword [ebp - 0x38], 0x6bc918
cmp eax, 0xffffffff
jne 0x4ecd2d
mov ecx, 0x6bc918
call fcn.004facf0
jmp 0x4ecd37
inc eax
lea ecx, [ebp - 0x38]
push eax
call fcn.004faca0
add eax, esi
mov byte [ebp - 0x34], 0
xor edx, edx
mov byte [0x6bc62b], 0
div edi
inc dl
mov cl, dl
mov ch, dl
xor cl, 0xef
mov al, dl
xor al, cl
mov ah, dl
xor ch, 0x89
mov byte [0x6bc628], al
mov al, dl
xor ah, 0x9c
xor dl, ch
xor al, ah
mov byte [0x6bc62a], dl
lea edx, [ebp - 0x50]
push ecx
mov ecx, 0x6bc628
mov byte [0x6bc629], al
call fcn.00546670
add esp, 4
test al, al
je 0x4ecd92
mov dword [0x5920c8], 3
movss xmm1, dword [0x58aa50]
xorps xmm0, xmm0
call fcn.00528640
mov eax, dword [0x6ba4fc]
mov esi, dword [0x6ba4f8]
sub eax, esi
mov dword [ebp - 0x50], 0x428c0000
mov dword [ebp - 0x4c], 0x420c0000
mov dword [ebp - 0x38], 0x6bc918
cmp eax, 0xffffffff
jne 0x4ecdd5
mov ecx, 0x6bc918
call fcn.004facf0
jmp 0x4ecddf
inc eax
lea ecx, [ebp - 0x38]
push eax
call fcn.004faca0
add eax, esi
mov byte [ebp - 0x34], 0
xor edx, edx
mov byte [0x6bc8db], 0
div edi
inc dl
mov cl, dl
mov ch, dl
xor cl, 0xef
mov al, dl
xor al, cl
mov ah, dl
xor ch, 0x9b
mov byte [0x6bc8d8], al
mov al, dl
xor ah, 0x84
xor dl, ch
xor al, ah
mov byte [0x6bc8da], dl
lea edx, [ebp - 0x50]
push ecx
mov ecx, 0x6bc8d8
mov byte [0x6bc8d9], al
call fcn.00546670
add esp, 4
test al, al
je 0x4ece3a
mov dword [0x5920c8], 4
movss xmm1, dword [0x58aa50]
xorps xmm0, xmm0
call fcn.00528640
mov eax, dword [0x6ba4fc]
mov esi, dword [0x6ba4f8]
sub eax, esi
mov dword [ebp - 0x50], 0x428c0000
mov dword [ebp - 0x4c], 0x420c0000
mov dword [ebp - 0x38], 0x6bc918
cmp eax, 0xffffffff
jne 0x4ece7d
mov ecx, 0x6bc918
call fcn.004facf0
jmp 0x4ece87
inc eax
lea ecx, [ebp - 0x38]
push eax
call fcn.004faca0
add eax, esi
mov byte [ebp - 0x34], 0
xor edx, edx
mov byte [0x6bdd53], 0
div edi
inc dl
mov cl, dl
mov ch, dl
xor cl, 0xef
mov al, dl
xor al, cl
mov ah, dl
xor ch, 0x93
mov byte [0x6bdd50], al
mov al, dl
xor ah, 0x80
xor dl, ch
xor al, ah
mov byte [0x6bdd52], dl
lea edx, [ebp - 0x50]
push ecx
mov ecx, 0x6bdd50
mov byte [0x6bdd51], al
call fcn.00546670
add esp, 4
test al, al
je 0x4eceea
mov dword [0x5920c8], 5
jmp 0x4eceea
mov edi, dword [ebp - 0x88]
call fcn.005204c0
push 0
push ecx
lea eax, [ebp - 0x50]
mov dword [ebp - 0x50], 0x43eb0000
push eax
mov edx, 1
mov dword [ebp - 0x4c], 0x43c80000
xor ecx, ecx
call fcn.00520240
add esp, 0xc
test al, al
je 0x4ee384
mov ecx, dword [0x6bb530]
mov eax, dword [ecx + 0x3e48]
mov byte [eax + 0xac], 1
mov eax, dword [ecx + 0x3e48]
movss xmm0, dword [ecx + 0x37f4]
addss xmm0, dword [eax + 0x134]
movss dword [eax + 0x134], xmm0
addss xmm0, dword [eax + 0x14]
addss xmm0, dword [eax + 0x138]
movss dword [eax + 0xf0], xmm0
mov eax, dword [0x5920c8]
cmp eax, 1
jne 0x4ecf75
call fcn.004fed60
jmp 0x4ee1fb
cmp eax, 2
jne 0x4ed914
mov eax, dword [0x6ba4fc]
mov esi, dword [0x6ba4f8]
sub eax, esi
mov dword [ebp - 0x38], 0x6bc918
cmp eax, 0xffffffff
jne 0x4ecfa3
mov ecx, 0x6bc918
call fcn.004facf0
jmp 0x4ecfad
inc eax
lea ecx, [ebp - 0x38]
push eax
call fcn.004faca0
add eax, esi
mov dword [ebp - 0x1c], 3
xor edx, edx
mov byte [ebp - 0x34], 0
div edi
xorps xmm0, xmm0
mov esi, 0xf
mov dh, dl
mov dword [ebp - 0x18], esi
inc dh
mov al, dh
mov cl, dh
xor al, 0x42
mov ch, dh
mov dword [ebp - 0x38], eax
xor ch, 0x4f
xor eax, eax
mov dl, dh
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x2c], eax
xor dl, 0x54
mov eax, dword [ebp - 0x38]
xor cl, al
lea eax, [ebp - 0x2c]
mov byte [eax], cl
mov cl, dh
xor cl, ch
cmp dword [ebp - 0x18], esi
cmova eax, dword [ebp - 0x2c]
xor dh, dl
mov byte [eax + 1], cl
lea eax, [ebp - 0x2c]
cmp dword [ebp - 0x18], esi
cmova eax, dword [ebp - 0x2c]
mov byte [eax + 2], dh
mov dword [ebp - 4], 0
lea ecx, [ebp - 0x2c]
cmp dword [ebp - 0x18], esi
cmova ecx, dword [ebp - 0x2c]
call fcn.005487d0
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x18]
cmp ecx, esi
jbe 0x4ed062
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4ed058
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4ed058
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0055efc1
add esp, 8
mov eax, dword [0x6ba4fc]
mov esi, dword [0x6ba4f8]
sub eax, esi
mov dword [ebp - 0x38], 0x6bc918
cmp eax, 0xffffffff
jne 0x4ed087
mov ecx, 0x6bc918
call fcn.004facf0
jmp 0x4ed091
inc eax
lea ecx, [ebp - 0x38]
push eax
call fcn.004faca0
add eax, esi
mov byte [ebp - 0x47], 0
xor edx, edx
lea ecx, [ebp - 0x52]
div edi
inc dl
mov al, dl
mov byte [ebp - 0x52], dl
xor al, 0x42
mov byte [ebp - 0x51], al
mov al, dl
xor al, 0x6f
mov byte [ebp - 0x50], al
mov al, dl
xor al, 0x74
mov byte [ebp - 0x4f], al
mov al, dl
xor al, 0x20
mov byte [ebp - 0x4e], al
mov al, dl
xor al, 0x53
mov byte [ebp - 0x4d], al
mov al, dl
xor al, 0x63
mov byte [ebp - 0x4c], al
mov al, dl
xor al, 0x72
mov byte [ebp - 0x4b], al
mov al, dl
xor al, 0x69
mov byte [ebp - 0x4a], al
mov al, dl
xor al, 0x70
xor dl, 0x74
mov byte [ebp - 0x49], al
lea eax, [ebp - 0x2c]
push eax
mov byte [ebp - 0x48], dl
call fcn.004f5480
mov dword [ebp - 4], 1
cmp dword [eax + 0x14], 0xf
jbe 0x4ed100
mov eax, dword [eax]
push 0x6bc850
push eax
call fcn.0055b120
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x18]
cmp ecx, 0xf
jbe 0x4ed148
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4ed13e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4ed13e
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0055efc1
add esp, 8
cmp byte [0x6bc850], 0
je 0x4ed905
push ecx
push 0x1a
push 0x6ba100
push fcn.00549220
mov edx, 0x6bc704
mov ecx, 0x5662f4
call fcn.005492a0
mov eax, dword [0x6ba4fc]
add esp, 0x10
mov esi, dword [0x6ba4f8]
sub eax, esi
mov dword [ebp - 0x38], 0x6bc918
cmp eax, 0xffffffff
jne 0x4ed199
mov ecx, 0x6bc918
call fcn.004facf0
jmp 0x4ed1a3
inc eax
lea ecx, [ebp - 0x38]
push eax
call fcn.004faca0
add eax, esi
mov dword [ebp - 0x1c], 5
xor edx, edx
mov byte [ebp - 0x34], 0
div edi
mov esi, 0xf
xorps xmm0, xmm0
mov ah, dl
mov dword [ebp - 0x18], esi
inc ah
mov cl, ah
mov byte [ebp - 0x11], ah
xor cl, 0x79
mov al, ah
xor al, 0x44
mov byte [ebp - 0x2d], cl
mov cl, ah
mov ch, ah
xor cl, al
mov dl, ah
mov dh, ah
xor ch, 0x65
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x2c], 0
lea eax, [ebp - 0x2c]
mov dword [ebp - 0x2c], 0
xor dl, 0x6c
mov word [ebp - 0x28], 0
xor dh, 0x61
mov byte [eax], cl
mov cl, byte [ebp - 0x11]
xor cl, ch
cmp dword [ebp - 0x18], esi
mov ch, byte [ebp - 0x11]
cmova eax, dword [ebp - 0x2c]
mov byte [eax + 1], cl
mov cl, ch
xor cl, dl
lea eax, [ebp - 0x2c]
cmp dword [ebp - 0x18], esi
cmova eax, dword [ebp - 0x2c]
mov byte [eax + 2], cl
mov cl, ch
xor cl, dh
lea eax, [ebp - 0x2c]
cmp dword [ebp - 0x18], esi
cmova eax, dword [ebp - 0x2c]
xor ch, byte [ebp - 0x2d]
mov byte [eax + 3], cl
lea eax, [ebp - 0x2c]
cmp dword [ebp - 0x18], esi
cmova eax, dword [ebp - 0x2c]
mov byte [eax + 4], ch
push ecx
push 0x5662f8
push 0x50
push 0xa
lea ecx, [ebp - 0x2c]
mov dword [ebp - 4], 2
call fcn.004f6d70
mov edx, 0x6bc828
mov ecx, eax
call fcn.0054aaa0
add esp, 0x10
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.004f6e60
mov ecx, 0x5645a1
call fcn.005487d0
push dword [ebp - 0x37]
push ecx
lea ecx, [ebp - 0x3a]
call fcn.004f8400
lea ecx, [ebp - 0x2c]
push ecx
mov ecx, eax
call fcn.004f58f0
mov dword [ebp - 4], 3
push ecx
push 0x566304
push 0xc
push ecx
mov ecx, eax
call fcn.004f6d70
movss xmm2, dword [0x58a8e4]
mov edx, 0x6bb430
mov ecx, eax
call fcn.0054a290
add esp, 0x10
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.004f6e60
push dword [ebp - 0x37]
push ecx
lea ecx, [ebp - 0x4f]
call fcn.004f8480
lea ecx, [ebp - 0x2c]
push ecx
mov ecx, eax
call fcn.004f5820
push ecx
push 0x566310
push 0x37
push ecx
mov ecx, eax
mov dword [ebp - 4], 4
call fcn.004f6d70
movss xmm2, dword [0x58a8e4]
mov edx, 0x6bb420
mov ecx, eax
call fcn.0054a290
add esp, 0x10
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.004f6e60
mov eax, dword [0x6bb430]
test eax, eax
jns 0x4ed33c
xor eax, eax
jmp 0x4ed346
mov ecx, 0xc
cmp eax, ecx
cmovg eax, ecx
mov dword [0x6bb430], eax
mov eax, dword [0x6bb420]
test eax, eax
jns 0x4ed358
xor eax, eax
jmp 0x4ed362
mov ecx, 0x37
cmp eax, ecx
cmovg eax, ecx
mov esi, dword [0x6ba4f8]
mov dword [0x6bb420], eax
mov eax, dword [0x6ba4fc]
sub eax, esi
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0
mov dword [ebp - 0x38], 0x6bc918
cmp eax, 0xffffffff
jne 0x4ed39a
mov ecx, 0x6bc918
call fcn.004facf0
jmp 0x4ed3a4
inc eax
lea ecx, [ebp - 0x38]
push eax
call fcn.004faca0
add eax, esi
mov byte [ebp - 0x34], 0
xor edx, edx
lea ecx, [ebp - 0x3d]
div edi
inc dl
mov al, dl
mov byte [ebp - 0x3d], dl
xor al, 0x52
mov byte [ebp - 0x3c], al
mov al, dl
xor al, 0x75
mov byte [ebp - 0x3b], al
mov al, dl
xor al, 0x6e
mov byte [ebp - 0x3a], al
mov al, dl
xor al, 0x20
mov byte [ebp - 0x39], al
mov al, dl
xor al, 0x54
mov byte [ebp - 0x38], al
mov al, dl
xor al, 0x69
mov byte [ebp - 0x37], al
mov al, dl
xor al, 0x6d
xor dl, 0x65
mov byte [ebp - 0x36], al
lea eax, [ebp - 0x2c]
push eax
mov byte [ebp - 0x35], dl
call fcn.004f5730
mov dword [ebp - 4], 5
cmp dword [eax + 0x14], 0xf
jbe 0x4ed405
mov eax, dword [eax]
push ecx
lea edx, [ebp - 0x50]
mov ecx, eax
call fcn.00546670
mov dword [ebp - 4], 0xffffffff
add esp, 4
mov ecx, dword [ebp - 0x18]
mov byte [ebp - 0x2d], al
cmp ecx, 0xf
jbe 0x4ed456
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4ed449
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4ed449
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0055efc1
mov al, byte [ebp - 0x2d]
add esp, 8
test al, al
je 0x4ed49e
mov ecx, dword [0x6bb430]
mov eax, dword [0x6bb420]
shl ecx, 4
sub ecx, dword [0x6bb430]
lea eax, [eax + ecx*4]
mov ecx, eax
shl ecx, 4
sub ecx, eax
shl ecx, 2
test ecx, ecx
jle 0x4ed49e
lea ecx, [ebp - 0x50]
mov byte [0x6bb318], 1
call fcn.004df5e0
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [0x6bb488], ecx
mov dword [0x6bb48c], eax
movss xmm1, dword [0x58aa50]
xorps xmm0, xmm0
call fcn.00528640
cmp byte [0x6bb318], 0
je 0x4ed64c
push dword [ebp - 0x37]
mov dword [ebp - 0x50], 0
push ecx
lea ecx, [ebp - 0x40]
mov dword [ebp - 0x4c], 0
call fcn.004f85a0
lea ecx, [ebp - 0x2c]
push ecx
mov ecx, eax
call fcn.004f56d0
mov ecx, eax
mov dword [ebp - 4], 6
call fcn.004f6d70
lea edx, [ebp - 0x50]
mov ecx, eax
call fcn.00546940
lea ecx, [ebp - 0x2c]
mov byte [ebp - 0x2d], al
mov dword [ebp - 4], 0xffffffff
call fcn.004f6e60
cmp byte [ebp - 0x2d], 0
je 0x4ed51c
mov byte [0x6bb318], 0
jmp 0x4ed64c
cmp byte [0x6bb318], 0
je 0x4ed64c
lea ecx, [ebp - 0x50]
call fcn.004df5e0
mov ecx, dword [0x6bb430]
mov eax, dword [0x6bb420]
shl ecx, 4
sub ecx, dword [0x6bb430]
push 0
push 0x3b9aca00
lea eax, [eax + ecx*4]
mov ecx, dword [ebp - 0x50]
mov esi, eax
shl esi, 4
sub esi, eax
mov eax, dword [ebp - 0x4c]
shl esi, 2
sub ecx, dword [0x6bb488]
sbb eax, dword [0x6bb48c]
push eax
push ecx
call fcn.00560050
push dword [ebp - 0x37]
sub esi, eax
mov dword [ebp - 0x80], esi
test esi, esi
jg 0x4ed5b4
push ecx
lea ecx, [ebp - 0x78]
mov byte [0x6bb318], 0
call fcn.004f94c0
lea ecx, [ebp - 0x2c]
push ecx
mov ecx, eax
call fcn.004f5640
mov ecx, eax
call fcn.004f6d50
mov ecx, eax
call fcn.004e94d0
lea ecx, [ebp - 0x2c]
call fcn.004f7510
jmp 0x4ed64c
mov eax, 0x91a2b3c5
mov ecx, esi
imul esi
add edx, esi
sar edx, 0xb
mov edi, edx
shr edi, 0x1f
add edi, edx
imul eax, edi, 0xe10
sub ecx, eax
mov eax, 0x88888889
imul ecx
mov eax, 0x88888889
add edx, ecx
sar edx, 5
mov esi, edx
shr esi, 0x1f
add esi, edx
imul dword [ebp - 0x80]
add edx, dword [ebp - 0x80]
sar edx, 5
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov eax, ecx
shl eax, 4
sub eax, ecx
shl eax, 2
sub dword [ebp - 0x80], eax
push ecx
lea ecx, [ebp - 0x6f]
call fcn.004f8720
lea ecx, [ebp - 0x2c]
push ecx
mov ecx, eax
call fcn.004f55a0
mov dword [ebp - 4], 7
mov ecx, dword [ebp - 0x80]
push ecx
push esi
push edi
mov ecx, eax
call fcn.004f6d70
push eax
call fcn.00545ce0
add esp, 0x10
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x2c]
call fcn.004f6e60
mov edi, dword [ebp - 0x88]
call fcn.00525a50
mov ecx, 0x5645a2
call fcn.005487d0
mov eax, dword [0x6ba4fc]
mov esi, dword [0x6ba4f8]
sub eax, esi
mov dword [ebp - 0x38], 0x6bc918
cmp eax, 0xffffffff
jne 0x4ed680
mov ecx, 0x6bc918
call fcn.004facf0
jmp 0x4ed68a
inc eax
lea ecx, [ebp - 0x38]
push eax
call fcn.004faca0
add eax, esi
mov byte [ebp - 0x47], 0
xor edx, edx
mov dword [ebp - 0x1c], 0xb
div edi
xorps xmm0, xmm0
mov esi, 0xf
mov ch, dl
mov dword [ebp - 0x18], esi
inc ch
mov al, ch
mov byte [ebp - 0x53], ch
xor al, 0x52
mov byte [ebp - 0x52], al
mov al, ch
xor al, 0x75
mov byte [ebp - 0x51], al
mov al, ch
xor al, 0x6e
mov byte [ebp - 0x50], al
mov al, ch
xor al, 0x20
mov byte [ebp - 0x4f], al
mov al, ch
xor al, 0x53
mov byte [ebp - 0x4e], al
mov al, ch
xor al, 0x63
mov byte [ebp - 0x4d], al
mov al, ch
xor al, 0x72
mov byte [ebp - 0x4c], al
mov al, ch
xor al, 0x69
mov byte [ebp - 0x4b], al
mov al, ch
xor al, 0x70
mov byte [ebp - 0x4a], al
mov al, ch
xor al, 0x74
mov byte [ebp - 0x49], al
mov al, ch
xor al, 0x20
xor edx, edx
movups xmmword [ebp - 0x2c], xmm0
mov byte [ebp - 0x48], al
movq qword [ebp - 0x2c], xmm0
mov dword [ebp - 0x24], 0
nop dword [eax]
mov cl, byte [ebp + edx - 0x52]
lea eax, [ebp - 0x2c]
xor cl, ch
cmp esi, 0xf
cmova eax, dword [ebp - 0x2c]
mov byte [eax + edx], cl
inc edx
cmp edx, 0xb
jae 0x4ed72e
mov esi, dword [ebp - 0x18]
jmp 0x4ed710
mov dword [ebp - 4], 8
lea eax, [ebp - 0x2c]
cmp dword [ebp - 0x18], 0xf
push 0x6bdd98
cmova eax, dword [ebp - 0x2c]
push eax
call fcn.0055b120
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x18]
cmp ecx, 0xf
jbe 0x4ed788
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4ed77e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4ed77e
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0055efc1
add esp, 8
cmp byte [0x6bdd98], 0
je 0x4ed798
mov byte [0x6bdcfc], 0
mov eax, dword [0x6ba4fc]
mov esi, dword [0x6ba4f8]
sub eax, esi
mov dword [ebp - 0x38], 0x6bc918
cmp eax, 0xffffffff
jne 0x4ed7bd
mov ecx, 0x6bc918
call fcn.004facf0
jmp 0x4ed7c7
inc eax
lea ecx, [ebp - 0x38]
push eax
call fcn.004faca0
add eax, esi
mov dword [ebp - 0x1c], 7
xor edx, edx
mov byte [ebp - 0x47], 0
div edi
mov esi, 0xf
xorps xmm0, xmm0
mov ah, dl
mov dword [ebp - 0x18], esi
inc ah
mov cl, ah
mov byte [ebp - 0x11], ah
xor cl, 0x42
mov dl, ah
mov byte [ebp - 0x2d], cl
mov dh, ah
mov cl, ah
mov al, ah
xor cl, 0x6f
xor al, 0x52
mov byte [ebp - 0x79], cl
mov ch, ah
mov cl, ah
xor dl, 0x6e
xor cl, 0x74
xor dh, 0x20
mov byte [ebp - 0x2e], cl
xor ch, 0x75
mov cl, ah
mov dword [ebp - 0x38], edx
xor cl, al
xor edx, edx
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x2c], edx
lea eax, [ebp - 0x2c]
mov dword [ebp - 0x28], edx
mov byte [eax], cl
mov cl, byte [ebp - 0x11]
mov edx, dword [ebp - 0x38]
xor cl, ch
cmp dword [ebp - 0x18], esi
mov ch, byte [ebp - 0x11]
cmova eax, dword [ebp - 0x2c]
mov byte [eax + 1], cl
mov cl, ch
xor cl, dl
lea eax, [ebp - 0x2c]
cmp dword [ebp - 0x18], esi
cmova eax, dword [ebp - 0x2c]
mov byte [eax + 2], cl
mov cl, ch
xor cl, dh
lea eax, [ebp - 0x2c]
cmp dword [ebp - 0x18], esi
cmova eax, dword [ebp - 0x2c]
mov byte [eax + 3], cl
mov cl, ch
xor cl, byte [ebp - 0x2d]
lea eax, [ebp - 0x2c]
cmp dword [ebp - 0x18], esi
cmova eax, dword [ebp - 0x2c]
mov byte [eax + 4], cl
mov cl, ch
xor cl, byte [ebp - 0x79]
lea eax, [ebp - 0x2c]
cmp dword [ebp - 0x18], esi
cmova eax, dword [ebp - 0x2c]
xor ch, byte [ebp - 0x2e]
mov byte [eax + 5], cl
lea eax, [ebp - 0x2c]
cmp dword [ebp - 0x18], esi
cmova eax, dword [ebp - 0x2c]
mov byte [eax + 6], ch
mov dword [ebp - 4], 9
lea eax, [ebp - 0x2c]
cmp dword [ebp - 0x18], esi
push 0x6bdcfc
cmova eax, dword [ebp - 0x2c]
push eax
call fcn.0055b120
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x18]
cmp ecx, esi
jbe 0x4ed8f0
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4ed8e6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4ed8e6
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0055efc1
add esp, 8
cmp byte [0x6bdcfc], 0
je 0x4ed900
mov byte [0x6bdd98], 0
call fcn.00525ae0
mov ecx, 0x5645a3
call fcn.005487d0
jmp 0x4ee1fb
cmp eax, 3
jne 0x4ee1e5
mov eax, dword [0x6ba4fc]
mov esi, dword [0x6ba4f8]
sub eax, esi
mov dword [ebp - 0x38], 0x6bc918
cmp eax, 0xffffffff
jne 0x4ed942
mov ecx, 0x6bc918
call fcn.004facf0
jmp 0x4ed94c
inc eax
lea ecx, [ebp - 0x38]
push eax
call fcn.004faca0
add eax, esi
mov dword [ebp - 0x1c], 4
xor edx, edx
mov byte [ebp - 0x34], 0
div edi
mov edi, 0xf
xor esi, esi
mov cl, dl
mov dword [ebp - 0x18], edi
inc cl
xorps xmm0, xmm0
mov al, cl
mov byte [ebp - 0x11], cl
xor al, 0x4d
mov ch, cl
mov dl, cl
mov dh, cl
xor cl, al
xor ch, 0x69
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x2c], esi
lea eax, [ebp - 0x2c]
mov byte [ebp - 0x28], 0
xor dl, 0x73
mov byte [eax], cl
xor dh, 0x63
mov cl, byte [ebp - 0x11]
xor cl, ch
cmp dword [ebp - 0x18], edi
mov ch, byte [ebp - 0x11]
cmova eax, dword [ebp - 0x2c]
mov byte [eax + 1], cl
mov cl, ch
xor cl, dl
lea eax, [ebp - 0x2c]
cmp dword [ebp - 0x18], edi
cmova eax, dword [ebp - 0x2c]
xor ch, dh
mov byte [eax + 2], cl
lea eax, [ebp - 0x2c]
cmp dword [ebp - 0x18], edi
cmova eax, dword [ebp - 0x2c]
mov byte [eax + 3], ch
mov dword [ebp - 4], 0xa
lea ecx, [ebp - 0x2c]
cmp dword [ebp - 0x18], edi
cmova ecx, dword [ebp - 0x2c]
call fcn.005487d0
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x18]
cmp ecx, edi
jbe 0x4eda1a
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4eda10
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4eda10
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0055efc1
add esp, 8
call fcn.00525a50
mov eax, dword [0x6ba4fc]
mov esi, dword [0x6ba4f8]
sub eax, esi
mov dword [ebp - 0x38], 0x6bc918
cmp eax, 0xffffffff
jne 0x4eda44
mov ecx, 0x6bc918
call fcn.004facf0
jmp 0x4eda4e
inc eax
lea ecx, [ebp - 0x38]
push eax
call fcn.004faca0
add eax, esi
mov edi, dword [ebp - 0x88]
xor edx, edx
mov byte [ebp - 0x15], 0
div edi
xorps xmm0, xmm0
mov dword [ebp - 0x50], 0
inc dl
mov dword [ebp - 0x4c], 0
mov al, dl
mov byte [ebp - 0x2e], dl
xor al, 0x46
mov byte [ebp - 0x2b], dl
mov byte [ebp - 0x2a], al
mov cl, dl
mov al, dl
xor cl, 0x65
xor al, 0x61
mov byte [ebp - 0x18], cl
mov byte [ebp - 0x29], al
mov al, dl
xor al, 0x73
mov byte [ebp - 0x17], cl
mov byte [ebp - 0x28], al
mov al, dl
xor al, 0x74
mov byte [ebp - 0x27], al
mov al, dl
xor al, 0x65
mov byte [ebp - 0x26], al
mov al, dl
xor al, 0x72
mov byte [ebp - 0x25], al
mov al, dl
xor al, 0x20
mov byte [ebp - 0x24], al
mov al, dl
xor al, 0x4c
mov byte [ebp - 0x23], al
mov al, dl
xor al, 0x6f
mov byte [ebp - 0x22], al
mov al, dl
xor al, 0x61
mov byte [ebp - 0x21], al
mov al, dl
xor al, 0x64
mov byte [ebp - 0x20], al
mov al, dl
xor al, 0x69
mov byte [ebp - 0x1f], al
mov al, dl
xor al, 0x6e
mov byte [ebp - 0x1e], al
mov al, dl
xor al, 0x67
mov byte [ebp - 0x1d], al
mov al, dl
xor al, 0x20
mov byte [ebp - 0x1c], al
mov al, dl
xor al, 0x53
mov byte [ebp - 0x1b], al
mov al, dl
xor al, 0x63
mov byte [ebp - 0x1a], al
mov al, dl
xor al, 0x72
mov byte [ebp - 0x19], al
mov al, dl
xor al, 0x6e
push 0x20
mov byte [ebp - 0x16], al
movups xmmword [ebp - 0x60], xmm0
call fcn.0055ed3b
xorps xmm0, xmm0
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x50], 0x15
add esp, 4
mov dword [ebp - 0x4c], 0x1f
movups xmmword [eax], xmm0
mov ch, byte [ebp - 0x2e]
xor edx, edx
mov dword [eax + 0x10], 0
mov word [eax + 0x14], 0
nop
mov cl, byte [ebp + edx - 0x2a]
lea eax, [ebp - 0x60]
xor cl, ch
cmp dword [ebp - 0x4c], 0xf
cmova eax, dword [ebp - 0x60]
mov byte [eax + edx], cl
inc edx
cmp edx, 0x15
jb 0x4edb40
mov dword [ebp - 4], 0xb
lea eax, [ebp - 0x60]
cmp dword [ebp - 0x4c], 0xf
push 0x6bc6de
cmova eax, dword [ebp - 0x60]
push eax
call fcn.0055b120
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x4c]
cmp ecx, 0xf
jbe 0x4edbb4
mov edx, dword [ebp - 0x60]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4edbaa
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4edbaa
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0055efc1
add esp, 8
mov eax, dword [0x6ba4fc]
mov esi, dword [0x6ba4f8]
sub eax, esi
mov dword [ebp - 0x38], 0x6bc918
cmp eax, 0xffffffff
jne 0x4edbd9
mov ecx, 0x6bc918
call fcn.004facf0
jmp 0x4edbe3
inc eax
lea ecx, [ebp - 0x38]
push eax
call fcn.004faca0
add eax, esi
mov byte [ebp - 0x47], 0
xor edx, edx
mov dword [ebp - 0x1c], 0xd
div edi
xorps xmm0, xmm0
mov esi, 0xf
mov ch, dl
mov dword [ebp - 0x18], esi
inc ch
mov al, ch
mov byte [ebp - 0x55], ch
xor al, 0x48
mov byte [ebp - 0x54], al
mov al, ch
xor al, 0x69
mov byte [ebp - 0x53], al
mov al, ch
xor al, 0x74
mov byte [ebp - 0x52], al
mov al, ch
xor al, 0x62
mov byte [ebp - 0x51], al
mov al, ch
xor al, 0x6f
mov byte [ebp - 0x50], al
mov al, ch
xor al, 0x78
mov byte [ebp - 0x4f], al
mov al, ch
xor al, 0x20
mov byte [ebp - 0x4e], al
mov al, ch
xor al, 0x56
mov byte [ebp - 0x4d], al
mov al, ch
xor al, 0x69
mov byte [ebp - 0x4c], al
mov al, ch
xor al, 0x65
mov byte [ebp - 0x4b], al
mov al, ch
xor al, 0x77
mov byte [ebp - 0x4a], al
mov al, ch
xor al, 0x65
mov byte [ebp - 0x49], al
mov al, ch
xor al, 0x72
xor edx, edx
movups xmmword [ebp - 0x2c], xmm0
mov byte [ebp - 0x48], al
movq qword [ebp - 0x2c], xmm0
mov dword [ebp - 0x24], 0
mov word [ebp - 0x20], 0
nop dword [eax]
mov cl, byte [ebp + edx - 0x54]
lea eax, [ebp - 0x2c]
xor cl, ch
cmp esi, 0xf
cmova eax, dword [ebp - 0x2c]
mov byte [eax + edx], cl
inc edx
cmp edx, 0xd
jae 0x4edc9e
mov esi, dword [ebp - 0x18]
jmp 0x4edc80
mov dword [ebp - 4], 0xc
lea eax, [ebp - 0x2c]
cmp dword [ebp - 0x18], 0xf
push 0x6bc6de
cmova eax, dword [ebp - 0x2c]
push eax
call fcn.0055b120
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x18]
cmp ecx, 0xf
jbe 0x4edcf8
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4edcee
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4edcee
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0055efc1
add esp, 8
mov eax, dword [0x6ba4fc]
mov esi, dword [0x6ba4f8]
sub eax, esi
mov dword [ebp - 0x38], 0x6bc918
cmp eax, 0xffffffff
jne 0x4edd1d
mov ecx, 0x6bc918
call fcn.004facf0
jmp 0x4edd27
inc eax
lea ecx, [ebp - 0x38]
push eax
call fcn.004faca0
add eax, esi
mov byte [ebp - 0x47], 0
xor edx, edx
mov dword [ebp - 0x1c], 0xd
div edi
xorps xmm0, xmm0
mov esi, 0xf
mov ch, dl
mov dword [ebp - 0x18], esi
inc ch
mov al, ch
mov byte [ebp - 0x55], ch
xor al, 0x52
mov byte [ebp - 0x54], al
mov al, ch
xor al, 0x65
mov byte [ebp - 0x53], al
mov al, ch
xor al, 0x63
mov byte [ebp - 0x52], al
mov al, ch
xor al, 0x6f
mov byte [ebp - 0x51], al
mov al, ch
xor al, 0x72
mov byte [ebp - 0x50], al
mov al, ch
xor al, 0x64
mov byte [ebp - 0x4f], al
mov al, ch
xor al, 0x20
mov byte [ebp - 0x4e], al
mov al, ch
xor al, 0x76
mov byte [ebp - 0x4d], al
mov al, ch
xor al, 0x73
mov byte [ebp - 0x4c], al
mov al, ch
xor al, 0x20
mov byte [ebp - 0x4b], al
mov al, ch
xor al, 0x43
mov byte [ebp - 0x4a], al
mov al, ch
xor al, 0x50
mov byte [ebp - 0x49], al
mov al, ch
xor al, 0x55
xor edx, edx
movups xmmword [ebp - 0x2c], xmm0
mov byte [ebp - 0x48], al
movq qword [ebp - 0x2c], xmm0
mov dword [ebp - 0x24], 0
mov word [ebp - 0x20], 0
nop dword [eax]
mov cl, byte [ebp + edx - 0x54]
lea eax, [ebp - 0x2c]
xor cl, ch
cmp esi, 0xf
cmova eax, dword [ebp - 0x2c]
mov byte [edx + eax], cl
inc edx
cmp edx, 0xd
jae 0x4eddde
mov esi, dword [ebp - 0x18]
jmp 0x4eddc0
mov dword [ebp - 4], 0xd
lea eax, [ebp - 0x2c]
cmp dword [ebp - 0x18], 0xf
push 0x6bc6de
cmova eax, dword [ebp - 0x2c]
push eax
call fcn.0055b120
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x18]
cmp ecx, 0xf
jbe 0x4ede38
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4ede2e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4ede2e
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0055efc1
add esp, 8
mov eax, dword [0x6ba4fc]
mov esi, dword [0x6ba4f8]
sub eax, esi
mov dword [ebp - 0x38], 0x6bc918
cmp eax, 0xffffffff
jne 0x4ede5d
mov ecx, 0x6bc918
call fcn.004facf0
jmp 0x4ede67
inc eax
lea ecx, [ebp - 0x38]
push eax
call fcn.004faca0
add eax, esi
mov byte [ebp - 0x47], 0
xor edx, edx
xorps xmm0, xmm0
div edi
inc dl
mov al, dl
mov byte [ebp - 0x2e], dl
xor al, 0x53
mov byte [ebp - 0x63], dl
mov byte [ebp - 0x62], al
mov ah, dl
mov al, dl
xor ah, 0x61
xor al, 0x61
mov byte [ebp - 0x54], ah
mov byte [ebp - 0x61], al
mov cl, dl
mov al, dl
mov byte [ebp - 0x4e], ah
xor al, 0x76
mov byte [ebp - 0x4c], ah
mov byte [ebp - 0x60], al
xor cl, 0x20
mov al, dl
mov byte [ebp - 0x53], cl
xor al, 0x65
mov byte [ebp - 0x50], cl
mov byte [ebp - 0x5f], al
mov al, dl
xor al, 0x20
mov byte [ebp - 0x49], cl
mov byte [ebp - 0x5e], al
mov al, dl
xor al, 0x43
mov byte [ebp - 0x5d], al
mov al, dl
xor al, 0x6f
mov byte [ebp - 0x5c], al
mov al, dl
xor al, 0x6d
mov byte [ebp - 0x5b], al
mov al, dl
xor al, 0x62
mov byte [ebp - 0x5a], al
mov al, dl
xor al, 0x6f
mov byte [ebp - 0x59], al
mov al, dl
xor al, 0x73
mov byte [ebp - 0x58], al
mov al, dl
xor al, 0x2e
mov byte [ebp - 0x57], al
mov al, dl
xor al, 0x6c
mov byte [ebp - 0x56], al
mov al, dl
xor al, 0x75
mov byte [ebp - 0x55], al
mov al, dl
xor al, 0x62
mov byte [ebp - 0x52], al
mov al, dl
xor al, 0x79
mov byte [ebp - 0x51], al
mov al, dl
xor al, 0x64
mov byte [ebp - 0x4f], al
mov al, dl
xor al, 0x6d
mov byte [ebp - 0x4d], al
mov al, dl
xor al, 0x67
mov byte [ebp - 0x4b], al
mov al, dl
xor al, 0x65
mov byte [ebp - 0x4a], al
mov al, dl
xor al, 0x3e
mov byte [ebp - 0x48], al
push 0x20
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0
mov dword [ebp - 0x18], 0
call fcn.0055ed3b
mov ch, byte [ebp - 0x2e]
xorps xmm0, xmm0
mov dword [ebp - 0x2c], eax
add esp, 4
mov dword [ebp - 0x1c], 0x1b
xor edx, edx
mov dword [ebp - 0x18], 0x1f
movups xmmword [eax], xmm0
movq qword [eax + 0x10], xmm0
mov dword [eax + 0x18], 0
nop
mov cl, byte [ebp + edx - 0x62]
lea eax, [ebp - 0x2c]
xor cl, ch
cmp dword [ebp - 0x18], 0xf
cmova eax, dword [ebp - 0x2c]
mov byte [eax + edx], cl
inc edx
cmp edx, 0x1b
jb 0x4edf70
mov dword [ebp - 4], 0xe
lea eax, [ebp - 0x2c]
cmp dword [ebp - 0x18], 0xf
push 0x6bc6d1
cmova eax, dword [ebp - 0x2c]
push eax
call fcn.0055b120
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x18]
cmp ecx, 0xf
jbe 0x4edfe4
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4edfda
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4edfda
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0055efc1
add esp, 8
cmp byte [0x6bc6d1], 0
je 0x4ee00c
push ecx
push 0x5663fc
push 0x1f4
push 0
mov edx, 0x6bc7a4
mov ecx, 0x5645aa
call fcn.0054aaa0
add esp, 0x10
mov eax, dword [0x6ba4fc]
mov esi, dword [0x6ba4f8]
sub eax, esi
mov dword [ebp - 0x38], 0x6bc918
cmp eax, 0xffffffff
jne 0x4ee031
mov ecx, 0x6bc918
call fcn.004facf0
jmp 0x4ee03b
inc eax
lea ecx, [ebp - 0x38]
push eax
call fcn.004faca0
add eax, esi
mov byte [ebp - 0x47], 0
xor edx, edx
div edi
inc dl
mov al, dl
mov byte [ebp - 0x52], dl
xor al, 0x43
mov cl, dl
mov byte [ebp - 0x51], al
xor cl, 0x6f
mov al, dl
mov byte [ebp - 0x4d], cl
xor al, 0x6f
mov byte [ebp - 0x4a], cl
mov byte [ebp - 0x50], al
lea ecx, [ebp - 0x52]
mov al, dl
xor al, 0x6d
mov byte [ebp - 0x4f], al
mov al, dl
xor al, 0x62
mov byte [ebp - 0x4e], al
mov al, dl
xor al, 0x20
mov byte [ebp - 0x4c], al
mov al, dl
xor al, 0x4d
mov byte [ebp - 0x4b], al
mov al, dl
xor al, 0x64
xor dl, 0x65
mov byte [ebp - 0x49], al
lea eax, [ebp - 0x2c]
push eax
mov byte [ebp - 0x48], dl
call fcn.004f5480
mov dword [ebp - 4], 0xf
cmp dword [eax + 0x14], 0xf
jbe 0x4ee0a7
mov eax, dword [eax]
push 0x6bc6de
push eax
call fcn.0055b120
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x18]
cmp ecx, 0xf
jbe 0x4ee0ef
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4ee0e5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4ee0e5
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0055efc1
add esp, 8
mov eax, dword [0x6ba4fc]
mov esi, dword [0x6ba4f8]
sub eax, esi
mov dword [ebp - 0x38], 0x6bc918
cmp eax, 0xffffffff
jne 0x4ee114
mov ecx, 0x6bc918
call fcn.004facf0
jmp 0x4ee11e
inc eax
lea ecx, [ebp - 0x38]
push eax
call fcn.004faca0
add eax, esi
mov byte [ebp - 0x47], 0
xor edx, edx
lea ecx, [ebp - 0x52]
div edi
inc dl
mov al, dl
mov byte [ebp - 0x52], dl
xor al, 0x53
mov byte [ebp - 0x51], al
mov al, dl
xor al, 0x65
mov byte [ebp - 0x50], al
mov al, dl
xor al, 0x74
mov byte [ebp - 0x4f], al
mov al, dl
xor al, 0x20
mov byte [ebp - 0x4e], al
mov al, dl
xor al, 0x78
mov byte [ebp - 0x4d], al
mov al, dl
xor al, 0x49
mov byte [ebp - 0x4c], al
mov al, dl
xor al, 0x6e
mov byte [ebp - 0x4b], al
mov al, dl
xor al, 0x70
mov byte [ebp - 0x4a], al
mov al, dl
xor al, 0x75
xor dl, 0x74
mov byte [ebp - 0x49], al
lea eax, [ebp - 0x2c]
push eax
mov byte [ebp - 0x48], dl
call fcn.004f5480
mov ecx, eax
mov dword [ebp - 4], 0x10
call fcn.004f6d70
push 0x6bc6de
push eax
call fcn.0055b120
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x18]
cmp ecx, 0xf
jbe 0x4ee1d4
mov edx, dword [ebp - 0x2c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4ee1ca
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4ee1ca
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.0055efc1
add esp, 8
call fcn.00525ae0
mov ecx, 0x5645ab
call fcn.005487d0
jmp 0x4ee1fb
cmp eax, 4
jne 0x4ee1f1
call fcn.004fcce0
jmp 0x4ee1fb
cmp eax, 5
jne 0x4ee1fb
call fcn.004fd050
call fcn.005204c0
push 0
push ecx
lea eax, [ebp - 0x50]
mov dword [ebp - 0x50], 0x43eb0000
push eax
mov edx, 3
mov dword [ebp - 0x4c], 0x42a00000
xor ecx, ecx
call fcn.00520240
add esp, 0xc
test al, al
je 0x4ee37f
mov ecx, dword [0x6bb530]
mov eax, dword [ecx + 0x3e48]
movss xmm0, dword [eax + 0xf4]
movss xmm1, dword [eax + 0x22c]
movaps xmm2, xmm0
subss xmm2, dword [eax + 0x18]
subss xmm1, xmm0
addss xmm2, dword [eax + 0x7c]
subss xmm1, dword [0x58a9ac]
mov byte [eax + 0xac], 1
mov eax, dword [ecx + 0x3e48]
mulss xmm1, dword [0x58a89c]
mov byte [eax + 0x131], 1
movss xmm0, dword [eax + 0x18]
subss xmm0, dword [eax + 0x7c]
addss xmm2, xmm1
addss xmm0, xmm2
movss dword [eax + 0xf4], xmm0
call fcn.004e9580
mov ecx, dword [0x6bb530]
mov eax, dword [ecx + 0x3e48]
mov byte [eax + 0xac], 1
mov eax, dword [ecx + 0x3e48]
cmp byte [eax + 0xaf], 0
jne 0x4ee2dc
movss xmm1, dword [0x58aa50]
lea ecx, [ebp - 0x50]
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x4c], 0
call fcn.005282b0
mov eax, dword [0x6ba4fc]
mov esi, dword [0x6ba4f8]
sub eax, esi
mov dword [ebp - 0x50], 0x42200000
mov dword [ebp - 0x4c], 0x41f00000
mov dword [ebp - 0x38], 0x6bc918
cmp eax, 0xffffffff
jne 0x4ee30f
mov ecx, 0x6bc918
call fcn.004facf0
jmp 0x4ee319
inc eax
lea ecx, [ebp - 0x38]
push eax
call fcn.004faca0
add eax, esi
mov byte [ebp - 0x34], 0
xor edx, edx
mov byte [0x6bc61b], 0
div edi
inc dl
mov cl, dl
mov ch, dl
xor cl, 0xef
mov al, dl
xor al, cl
mov ah, dl
xor ch, 0x91
mov byte [0x6bc618], al
mov al, dl
xor ah, 0x80
xor dl, ch
xor al, ah
mov byte [0x6bc61a], dl
lea edx, [ebp - 0x50]
push ecx
mov ecx, 0x6bc618
mov byte [0x6bc619], al
call fcn.00546670
add esp, 4
test al, al
jne 0x4ee39c
movss xmm1, dword [0x58aa50]
xorps xmm0, xmm0
call fcn.00528640
call fcn.004e6cc0
call fcn.005204c0
call fcn.005251e0
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.004e94a0
int3