Function at 0x40e830
Capabilities:
Encode data using xor

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 0x4839c3
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
push ebx
sub esp, 0xc8
push esi
push edi
push 1
call dword [sym.imp.KERNEL32.dll_Sleep]
mov eax, dword [0x602c68]
mov dword [eax + 0x20], 0
call fcn.00408c00
call fcn.0040e640
cmp dword [0x602d90], 0xf
mov ecx, 0x602d7c
push 0x80e2
cmova ecx, dword [0x602d7c]
xor edx, edx
call fcn.00445cf0
add esp, 4
mov ecx, 0x601e38
push 0x603108
call fcn.0041c780
xor edx, edx
mov ecx, 0x7e
div ecx
mov dword [ebp - 0xd8], ecx
xorps xmm0, xmm0
inc dl
movsx di, dl
push 0x12
movups xmmword [ebp - 0x50], xmm0
mov eax, edi
movzx esi, di
xor eax, 0x53
mov word [ebp - 0xa2], di
mov word [ebp - 0xa0], ax
mov eax, esi
xor eax, 0x74
movzx ecx, ax
mov eax, edi
xor eax, 0x74
mov word [ebp - 0x96], cx
mov word [ebp - 0x9e], ax
mov eax, edi
xor eax, 0x72
mov word [ebp - 0x8c], cx
mov word [ebp - 0x9c], ax
mov eax, esi
xor eax, 0x65
xor esi, 0x72
movzx edx, ax
mov eax, edi
xor eax, 0x65
mov word [ebp - 0x98], dx
mov word [ebp - 0x9a], ax
mov eax, edi
xor eax, 0x46
mov word [ebp - 0x8a], dx
mov word [ebp - 0x94], ax
mov eax, edi
xor eax, 0x69
mov word [ebp - 0x88], si
mov word [ebp - 0x92], ax
mov eax, edi
xor eax, 0x67
mov word [ebp - 0x82], dx
mov word [ebp - 0x90], ax
mov eax, edi
xor eax, 0x68
mov word [ebp - 0x7e], dx
mov word [ebp - 0x8e], ax
mov eax, edi
xor eax, 0x36
mov word [ebp - 0x86], ax
mov eax, edi
xor eax, 0x2e
mov word [ebp - 0x84], ax
mov eax, edi
xor eax, 0x78
mov word [ebp - 0x80], ax
xor eax, eax
mov word [ebp - 0x7c], ax
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x3c], eax
push ecx
lea ecx, [ebp - 0x50]
call fcn.0041c320
xor edx, edx
nop dword [eax]
nop dword [eax + eax]
mov ax, word [ebp + edx - 0xa0]
xor ax, di
cmp dword [ebp - 0x3c], 7
movzx ecx, ax
lea eax, [ebp - 0x50]
cmova eax, dword [ebp - 0x50]
mov word [edx + eax], cx
add edx, 2
cmp edx, 0x24
jb 0x40e9c0
cmp dword [ebp - 0x3c], 7
lea ecx, [ebp - 0x50]
cmova ecx, dword [ebp - 0x50]
call fcn.00425a90
mov ecx, dword [ebp - 0x3c]
mov byte [ebp - 0x11], al
cmp ecx, 7
jbe 0x40ea37
mov edx, dword [ebp - 0x50]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x40ea2a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x40ea2a
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00482021
mov al, byte [ebp - 0x11]
add esp, 8
xor ecx, ecx
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 7
mov word [ebp - 0x50], cx
test al, al
je 0x410ab2
mov ecx, dword [0x602c68]
xor edx, edx
push str.Background
mov eax, dword [ecx + 0x3e48]
movss xmm0, dword [eax + 0x14]
movss dword [ebp - 0x34], xmm0
movss xmm0, dword [eax + 0x18]
mov byte [eax + 0xac], 1
mov eax, dword [ecx + 0x3e48]
movss dword [ebp - 0x64], xmm0
mov esi, dword [eax + 0x264]
mov eax, dword [ecx + 0x47c4]
mov ecx, dword [eax]
call fcn.004403f0
mov eax, dword [0x602c68]
add esp, 4
mov edx, 1
mov eax, dword [eax + 0x47c4]
push str.Foreground
mov ecx, dword [eax]
call fcn.004403f0
movss xmm2, dword [ebp - 0x34]
lea eax, [ebp - 0x68]
movss xmm1, dword [ebp - 0x64]
movaps xmm0, xmm2
xorps xmm3, xmm3
add esp, 4
addss xmm0, xmm3
mov ecx, esi
push 0xe6000000
push 0xe6000000
movss dword [ebp - 0x20], xmm0
movaps xmm0, xmm1
addss xmm0, xmm3
push 0xe6f66bd3
push 0xe6000000
push eax
lea eax, [ebp - 0x20]
movss dword [ebp - 0x1c], xmm0
movss xmm0, dword [0x4ad1a4]
addss xmm2, xmm0
addss xmm1, xmm0
push eax
movss dword [ebp - 0x68], xmm2
movss dword [ebp - 0x64], xmm1
call fcn.0045f040
call fcn.00403390
mov esi, dword [0x602c68]
lea eax, [ebp - 0x24]
push eax
mov dword [ebp - 0x24], 0
movss xmm0, dword [esi + 0x3788]
lea ecx, [esi + 0x4764]
movss dword [ebp - 0x20], xmm0
call fcn.004531d0
push 0
push ecx
lea eax, [ebp - 0x20]
mov dword [esi + 0x3788], 0x3f800000
push eax
mov edx, 1
mov dword [ebp - 0x20], 0x43eb0000
xor ecx, ecx
mov dword [ebp - 0x1c], 0x43c80000
call fcn.004430c0
add esp, 0xc
test al, al
je 0x40ece0
push ecx
lea edx, [ebp - 0x20]
mov dword [ebp - 0x20], 0x428c0000
mov ecx, 0x4887d8
mov dword [ebp - 0x1c], 0x420c0000
call fcn.0046a0e0
add esp, 4
test al, al
je 0x40ebaf
mov dword [0x4b50c8], 1
movss xmm1, dword [0x4ad1f0]
xorps xmm0, xmm0
call fcn.0044b500
push ecx
lea edx, [ebp - 0x20]
mov dword [ebp - 0x20], 0x428c0000
mov ecx, 0x4887dc
mov dword [ebp - 0x1c], 0x420c0000
call fcn.0046a0e0
add esp, 4
test al, al
je 0x40ebec
mov dword [0x4b50c8], 2
movss xmm1, dword [0x4ad1f0]
xorps xmm0, xmm0
call fcn.0044b500
push ecx
lea edx, [ebp - 0x20]
mov dword [ebp - 0x20], 0x428c0000
mov ecx, 0x4887e0
mov dword [ebp - 0x1c], 0x420c0000
call fcn.0046a0e0
add esp, 4
test al, al
je 0x40ec29
mov dword [0x4b50c8], 3
movss xmm1, dword [0x4ad1f0]
xorps xmm0, xmm0
call fcn.0044b500
push ecx
lea edx, [ebp - 0x20]
mov dword [ebp - 0x20], 0x428c0000
mov ecx, 0x4887e4
mov dword [ebp - 0x1c], 0x420c0000
call fcn.0046a0e0
add esp, 4
test al, al
je 0x40ec66
mov dword [0x4b50c8], 4
movss xmm1, dword [0x4ad1f0]
xorps xmm0, xmm0
call fcn.0044b500
push ecx
lea edx, [ebp - 0x20]
mov dword [ebp - 0x20], 0x428c0000
mov ecx, 0x4887e8
mov dword [ebp - 0x1c], 0x420c0000
call fcn.0046a0e0
add esp, 4
test al, al
je 0x40eca3
mov dword [0x4b50c8], 5
movss xmm1, dword [0x4ad1f0]
xorps xmm0, xmm0
call fcn.0044b500
push ecx
lea edx, [ebp - 0x20]
mov dword [ebp - 0x20], 0x428c0000
mov ecx, 0x4887ec
mov dword [ebp - 0x1c], 0x420c0000
call fcn.0046a0e0
add esp, 4
test al, al
je 0x40ece0
mov dword [0x4b50c8], 6
call fcn.00443340
push 0
push ecx
lea eax, [ebp - 0x20]
mov dword [ebp - 0x20], 0x43eb0000
push eax
mov edx, 1
mov dword [ebp - 0x1c], 0x43c80000
xor ecx, ecx
call fcn.004430c0
add esp, 0xc
test al, al
je 0x410a9a
mov ecx, dword [0x602c68]
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 [0x4b50c8]
cmp eax, 1
jne 0x40ed6b
call fcn.00421be0
jmp 0x40f644
cmp eax, 2
jne 0x40f3b4
mov ecx, 0x486d65
call fcn.0046c2e0
call fcn.0041a5a0
xor edx, edx
mov byte [ebp - 0x19], 0
div dword [ebp - 0xd8]
lea ecx, [ebp - 0x24]
inc dl
mov al, dl
mov byte [ebp - 0x24], dl
xor al, 0x42
mov byte [ebp - 0x23], al
mov al, dl
xor al, 0x6f
mov byte [ebp - 0x22], al
mov al, dl
xor al, 0x74
mov byte [ebp - 0x21], al
mov al, dl
xor al, 0x20
mov byte [ebp - 0x20], al
mov al, dl
xor al, 0x53
mov byte [ebp - 0x1f], al
mov al, dl
xor al, 0x63
mov byte [ebp - 0x1e], al
mov al, dl
xor al, 0x72
mov byte [ebp - 0x1d], al
mov al, dl
xor al, 0x69
mov byte [ebp - 0x1c], al
mov al, dl
xor al, 0x70
xor dl, 0x74
mov byte [ebp - 0x1b], al
lea eax, [ebp - 0x94]
push eax
mov byte [ebp - 0x1a], dl
call fcn.00418260
mov dword [ebp - 4], 0
cmp dword [eax + 0x14], 0xf
jbe 0x40edf7
mov eax, dword [eax]
push 0x6019b8
push eax
call fcn.0047e100
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x80]
cmp ecx, 0xf
jbe 0x40ee42
mov edx, dword [ebp - 0x94]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40ee38
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x40ee38
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00482021
add esp, 8
cmp byte [0x6019b8], 0
je 0x40f3aa
push dword [ebp - 0x64]
push ecx
lea ecx, [ebp - 0x33]
call fcn.0041ae40
lea ecx, [ebp - 0x94]
push ecx
mov ecx, eax
call fcn.00418d50
push ecx
push 0x17
push 0x6016f8
mov ecx, eax
mov dword [ebp - 4], 1
call fcn.00419ad0
mov edx, 0x602e38
mov ecx, eax
call fcn.0046ced0
add esp, 0xc
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x94]
call fcn.00419b50
push dword [ebp - 0x64]
push ecx
lea ecx, [ebp - 0x67]
call fcn.0041ae70
lea ecx, [ebp - 0x94]
push ecx
mov ecx, eax
call fcn.00418760
push ecx
push 0x488800
push 0x50
push 0xa
mov ecx, eax
mov dword [ebp - 4], 2
call fcn.00419ad0
mov edx, 0x601754
mov ecx, eax
call fcn.0046e5a0
add esp, 0x10
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x94]
call fcn.00419b50
mov ecx, 0x486d66
call fcn.0046c2e0
push dword [ebp - 0x64]
push ecx
lea ecx, [ebp - 0x67]
call fcn.0041aec0
lea ecx, [ebp - 0x94]
push ecx
mov ecx, eax
call fcn.00418760
push ecx
push 0x48880c
push 0xc
push ecx
mov ecx, eax
mov dword [ebp - 4], 3
call fcn.00419ad0
movss xmm2, dword [0x4ad078]
mov edx, 0x602b68
mov ecx, eax
call fcn.0046dd90
add esp, 0x10
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x94]
call fcn.00419b50
push dword [ebp - 0x64]
push ecx
lea ecx, [ebp - 0x21]
call fcn.0041af10
lea ecx, [ebp - 0x94]
push ecx
mov ecx, eax
call fcn.00418b00
mov dword [ebp - 4], 4
push ecx
push 0x488818
push 0x37
push ecx
mov ecx, eax
call fcn.00419ad0
movss xmm2, dword [0x4ad078]
mov edx, 0x602b58
mov ecx, eax
call fcn.0046dd90
add esp, 0x10
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x94]
call fcn.00419b50
mov eax, dword [0x602b68]
test eax, eax
jns 0x40efbe
xor eax, eax
jmp 0x40efc8
mov ecx, 0xc
cmp eax, ecx
cmovg eax, ecx
mov dword [0x602b68], eax
mov eax, dword [0x602b58]
test eax, eax
jns 0x40efda
xor eax, eax
jmp 0x40efe4
mov ecx, 0x37
cmp eax, ecx
cmovg eax, ecx
push dword [ebp - 0x64]
mov dword [0x602b58], eax
push ecx
lea ecx, [ebp - 0x6a]
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
call fcn.0041af70
lea ecx, [ebp - 0x94]
push ecx
mov ecx, eax
call fcn.00418480
mov ecx, eax
mov dword [ebp - 4], 5
call fcn.00419ad0
lea edx, [ebp - 0x20]
mov ecx, eax
call fcn.0046a3b0
lea ecx, [ebp - 0x94]
mov byte [ebp - 0x11], al
mov dword [ebp - 4], 0xffffffff
call fcn.00419b50
cmp byte [ebp - 0x11], 0
je 0x40f088
mov ecx, dword [0x602b68]
mov eax, dword [0x602b58]
shl ecx, 4
sub ecx, dword [0x602b68]
lea eax, [eax + ecx*4]
mov ecx, eax
shl ecx, 4
sub ecx, eax
shl ecx, 2
test ecx, ecx
jle 0x40f088
lea ecx, [ebp - 0x20]
mov byte [0x602a50], 1
call fcn.00403100
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov dword [0x602bc0], ecx
mov dword [0x602bc4], eax
movss xmm1, dword [0x4ad1f0]
xorps xmm0, xmm0
call fcn.0044b500
cmp byte [0x602a50], 0
je 0x40f242
push dword [ebp - 0x64]
mov dword [ebp - 0x20], 0
push ecx
lea ecx, [ebp - 0x6d]
mov dword [ebp - 0x1c], 0
call fcn.0041afd0
lea ecx, [ebp - 0x94]
push ecx
mov ecx, eax
call fcn.00418bd0
mov ecx, eax
mov dword [ebp - 4], 6
call fcn.00419ad0
lea edx, [ebp - 0x20]
mov ecx, eax
call fcn.0046a3b0
lea ecx, [ebp - 0x94]
mov byte [ebp - 0x11], al
mov dword [ebp - 4], 0xffffffff
call fcn.00419b50
cmp byte [ebp - 0x11], 0
je 0x40f10c
mov byte [0x602a50], 0
jmp 0x40f242
cmp byte [0x602a50], 0
je 0x40f242
lea ecx, [ebp - 0x20]
call fcn.00403100
mov ecx, dword [0x602b68]
mov eax, dword [0x602b58]
shl ecx, 4
sub ecx, dword [0x602b68]
push 0
push 0x3b9aca00
lea eax, [eax + ecx*4]
mov ecx, dword [ebp - 0x20]
mov esi, eax
shl esi, 4
sub esi, eax
mov eax, dword [ebp - 0x1c]
shl esi, 2
sub ecx, dword [0x602bc0]
sbb eax, dword [0x602bc4]
push eax
push ecx
call fcn.004830b0
push dword [ebp - 0x64]
sub esi, eax
mov dword [ebp - 0x34], esi
test esi, esi
jg 0x40f1aa
push ecx
lea ecx, [ebp - 0x60]
mov byte [0x602a50], 0
call fcn.0041b040
lea ecx, [ebp - 0x94]
push ecx
mov ecx, eax
call fcn.00418cf0
mov ecx, eax
call fcn.00419a60
mov ecx, eax
call fcn.0040db10
lea ecx, [ebp - 0x94]
call fcn.00419a70
jmp 0x40f242
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 - 0x34]
add edx, dword [ebp - 0x34]
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 - 0x34], eax
push ecx
lea ecx, [ebp - 0x60]
call fcn.0041b0f0
lea ecx, [ebp - 0x94]
push ecx
mov ecx, eax
call fcn.00418380
mov dword [ebp - 4], 7
mov ecx, dword [ebp - 0x34]
push ecx
push esi
push edi
mov ecx, eax
call fcn.00419ad0
push eax
call fcn.00469690
add esp, 0x10
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x94]
call fcn.00419b50
call fcn.004489f0
mov ecx, 0x486d67
call fcn.0046c2e0
push dword [ebp - 0x64]
push ecx
lea ecx, [ebp - 0x24]
call fcn.0041b1e0
lea ecx, [ebp - 0x94]
push ecx
mov ecx, eax
call fcn.00418260
mov ecx, eax
mov dword [ebp - 4], 8
call fcn.00419ad0
push 0x602e4d
push eax
call fcn.0047e100
lea ecx, [ebp - 0x94]
mov dword [ebp - 4], 0xffffffff
call fcn.00419b50
cmp byte [0x602e4d], 0
je 0x40f2a6
mov byte [0x602e44], 0
push dword [ebp - 0x64]
push ecx
lea ecx, [ebp - 0x29]
call fcn.0041b240
lea ecx, [ebp - 0x94]
push ecx
mov ecx, eax
call fcn.00418c30
mov ecx, eax
mov dword [ebp - 4], 9
call fcn.00419ad0
push 0x602e44
push eax
call fcn.0047e100
lea ecx, [ebp - 0x94]
mov dword [ebp - 4], 0xffffffff
call fcn.00419b50
cmp byte [0x602e44], 0
je 0x40f2fb
mov byte [0x602e4d], 0
push dword [ebp - 0x64]
push ecx
lea ecx, [ebp - 0x25]
call fcn.0041b2c0
lea ecx, [ebp - 0x94]
push ecx
mov ecx, eax
call fcn.00418bd0
mov ecx, eax
mov dword [ebp - 4], 0xa
call fcn.00419ad0
push 0x602e4d
push eax
call fcn.0047e100
lea ecx, [ebp - 0x94]
mov dword [ebp - 4], 0xffffffff
call fcn.00419b50
cmp byte [0x602e4d], 0
je 0x40f350
mov byte [0x602e44], 0
push dword [ebp - 0x64]
push ecx
lea ecx, [ebp - 0x21]
call fcn.0041b340
lea ecx, [ebp - 0x94]
push ecx
mov ecx, eax
call fcn.00418b00
mov ecx, eax
mov dword [ebp - 4], 0xb
call fcn.00419ad0
push 0x602e44
push eax
call fcn.0047e100
lea ecx, [ebp - 0x94]
mov dword [ebp - 4], 0xffffffff
call fcn.00419b50
cmp byte [0x602e44], 0
je 0x40f3a5
mov byte [0x602e4d], 0
call fcn.00448a80
mov ecx, 0x486d72
jmp 0x40f63f
cmp eax, 3
jne 0x40f649
push dword [ebp - 0x64]
push ecx
lea ecx, [ebp - 0x20]
call fcn.0041b3a0
lea ecx, [ebp - 0x94]
push ecx
mov ecx, eax
call fcn.00418570
mov ecx, eax
mov dword [ebp - 4], 0xc
call fcn.00419ad0
mov ecx, eax
call fcn.0046c2e0
lea ecx, [ebp - 0x94]
mov dword [ebp - 4], 0xffffffff
call fcn.00419b50
mov ecx, 0x486d73
call fcn.0046c2e0
call fcn.004489f0
push dword [ebp - 0x64]
push ecx
lea ecx, [ebp - 0x2a]
call fcn.0041b3f0
lea ecx, [ebp - 0x94]
push ecx
mov ecx, eax
call fcn.00418a50
mov ecx, eax
mov dword [ebp - 4], 0xd
call fcn.00419ad0
push 0x602e3d
push eax
call fcn.0047e100
lea ecx, [ebp - 0x94]
mov dword [ebp - 4], 0xffffffff
call fcn.00419b50
push dword [ebp - 0x64]
push ecx
lea ecx, [ebp - 0x27]
call fcn.0041b480
lea ecx, [ebp - 0x94]
push ecx
mov ecx, eax
call fcn.004189f0
mov ecx, eax
mov dword [ebp - 4], 0xe
call fcn.00419ad0
push 0x602e3d
push eax
call fcn.0047e100
lea ecx, [ebp - 0x94]
mov dword [ebp - 4], 0xffffffff
call fcn.00419b50
push dword [ebp - 0x64]
push ecx
lea ecx, [ebp - 0x26]
call fcn.0041b500
lea ecx, [ebp - 0x94]
push ecx
mov ecx, eax
call fcn.00418920
mov ecx, eax
mov dword [ebp - 4], 0xf
call fcn.00419ad0
push 0x602e3d
push eax
call fcn.0047e100
lea ecx, [ebp - 0x94]
mov dword [ebp - 4], 0xffffffff
call fcn.00419b50
push dword [ebp - 0x64]
push ecx
lea ecx, [ebp - 0x66]
call fcn.0041b580
lea ecx, [ebp - 0x94]
push ecx
mov ecx, eax
call fcn.00418810
mov ecx, eax
mov dword [ebp - 4], 0x10
call fcn.00419ad0
push 0x602e3d
push eax
call fcn.0047e100
lea ecx, [ebp - 0x94]
mov dword [ebp - 4], 0xffffffff
call fcn.00419b50
push dword [ebp - 0x64]
push ecx
lea ecx, [ebp - 0x28]
call fcn.0041b5d0
lea ecx, [ebp - 0x94]
push ecx
mov ecx, eax
call fcn.004188a0
mov ecx, eax
mov dword [ebp - 4], 0x11
call fcn.00419ad0
push 0x602e3d
push eax
call fcn.0047e100
lea ecx, [ebp - 0x94]
mov dword [ebp - 4], 0xffffffff
call fcn.00419b50
push dword [ebp - 0x64]
push ecx
lea ecx, [ebp - 0x24]
call fcn.0041b650
lea ecx, [ebp - 0x94]
push ecx
mov ecx, eax
call fcn.00418260
mov ecx, eax
mov dword [ebp - 4], 0x12
call fcn.00419ad0
push 0x602e3d
push eax
call fcn.0047e100
lea ecx, [ebp - 0x94]
mov dword [ebp - 4], 0xffffffff
call fcn.00419b50
push dword [ebp - 0x64]
push ecx
lea ecx, [ebp - 0x66]
call fcn.0041b6c0
lea ecx, [ebp - 0x94]
push ecx
mov ecx, eax
call fcn.00418810
mov ecx, eax
mov dword [ebp - 4], 0x13
call fcn.00419ad0
push 0x602e3d
push eax
call fcn.0047e100
lea ecx, [ebp - 0x94]
mov dword [ebp - 4], 0xffffffff
call fcn.00419b50
push dword [ebp - 0x64]
push ecx
lea ecx, [ebp - 0x67]
call fcn.0041b710
lea ecx, [ebp - 0x94]
push ecx
mov ecx, eax
call fcn.00418760
mov ecx, eax
mov dword [ebp - 4], 0x14
call fcn.00419ad0
push 0x602e3d
push eax
call fcn.0047e100
mov dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x94]
call fcn.00419b50
call fcn.00448a80
mov ecx, 0x486d86
call fcn.0046c2e0
mov eax, dword [0x4b50c8]
cmp eax, 4
jne 0x410966
call fcn.0041a5a0
mov edi, dword [ebp - 0xd8]
xor edx, edx
div edi
xorps xmm0, xmm0
mov byte [ebp - 0x7b], 0
mov ah, dl
mov dword [ebp - 0x40], 0
inc ah
mov dword [ebp - 0x3c], 0
mov al, ah
mov byte [ebp - 0x11], ah
xor al, 0x4f
mov byte [ebp - 0x94], ah
mov byte [ebp - 0x93], al
mov dl, ah
mov al, ah
mov cl, ah
xor al, 0x6e
xor cl, 0x64
mov byte [ebp - 0x92], al
xor dl, 0x20
mov al, ah
mov byte [ebp - 0x8b], dl
xor al, 0x6c
mov byte [ebp - 0x83], cl
mov byte [ebp - 0x91], al
mov al, ah
xor al, 0x79
mov byte [ebp - 0x82], dl
mov byte [ebp - 0x90], al
mov al, ah
xor al, 0x20
mov byte [ebp - 0x7f], cl
mov byte [ebp - 0x8f], al
mov al, ah
xor al, 0x46
mov byte [ebp - 0x7e], cl
mov byte [ebp - 0x8e], al
mov al, ah
xor al, 0x6f
mov byte [ebp - 0x8d], al
mov al, ah
xor al, 0x72
mov byte [ebp - 0x8c], al
mov al, ah
xor al, 0x41
mov byte [ebp - 0x8a], al
mov al, ah
xor al, 0x64
mov byte [ebp - 0x89], al
mov al, ah
xor al, 0x76
mov byte [ebp - 0x88], al
mov al, ah
xor al, 0x61
mov byte [ebp - 0x87], al
mov al, ah
xor al, 0x6e
mov byte [ebp - 0x86], al
mov al, ah
xor al, 0x63
mov byte [ebp - 0x85], al
mov al, ah
xor al, 0x65
mov byte [ebp - 0x84], al
mov al, ah
xor al, 0x4d
mov byte [ebp - 0x81], al
mov al, ah
xor al, 0x6f
mov byte [ebp - 0x80], al
mov al, ah
xor al, 0x65
mov byte [ebp - 0x7d], al
mov al, ah
xor al, 0x72
push 0x20
mov byte [ebp - 0x7c], al
movups xmmword [ebp - 0x50], xmm0
call fcn.00481d9b
mov dl, byte [ebp - 0x11]
xorps xmm0, xmm0
mov dword [ebp - 0x50], eax
add esp, 4
mov dword [ebp - 0x40], 0x18
xor esi, esi
mov dword [ebp - 0x3c], 0x1f
movups xmmword [eax], xmm0
movq qword [eax + 0x10], xmm0
mov byte [eax + 0x18], 0
nop dword [eax]
mov cl, byte [ebp + esi - 0x93]
lea eax, [ebp - 0x50]
xor cl, dl
cmp dword [ebp - 0x3c], 0xf
cmova eax, dword [ebp - 0x50]
mov byte [eax + esi], cl
inc esi
cmp esi, 0x18
jb 0x40f790
mov dword [ebp - 4], 0x15
lea ecx, [ebp - 0x50]
cmp dword [ebp - 0x3c], 0xf
cmova ecx, dword [ebp - 0x50]
call fcn.0046c2e0
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x3c]
cmp ecx, 0xf
jbe 0x40f801
mov edx, dword [ebp - 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40f7f7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x40f7f7
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00482021
add esp, 8
call fcn.004489f0
call fcn.0041a5a0
xor edx, edx
mov byte [ebp - 0x19], 0
div edi
lea ecx, [ebp - 0x23]
inc dl
mov al, dl
mov byte [ebp - 0x23], dl
xor al, 0x4d
mov byte [ebp - 0x22], al
mov al, dl
xor al, 0x6f
mov byte [ebp - 0x21], al
mov al, dl
xor al, 0x74
mov byte [ebp - 0x20], al
mov al, dl
xor al, 0x69
mov byte [ebp - 0x1f], al
mov al, dl
xor al, 0x6f
mov byte [ebp - 0x1e], al
mov al, dl
xor al, 0x6e
mov byte [ebp - 0x1d], al
mov al, dl
xor al, 0x4b
mov byte [ebp - 0x1c], al
mov al, dl
xor al, 0x65
xor dl, 0x79
mov byte [ebp - 0x1b], al
lea eax, [ebp - 0x94]
push eax
mov byte [ebp - 0x1a], dl
call fcn.00418660
mov dword [ebp - 4], 0x16
cmp dword [eax + 0x14], 0xf
jbe 0x40f874
mov eax, dword [eax]
push 0x602e3d
push eax
call fcn.0047e100
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x80]
cmp ecx, 0xf
jbe 0x40f8bf
mov edx, dword [ebp - 0x94]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40f8b5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x40f8b5
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00482021
add esp, 8
movss xmm1, dword [0x4ad1f0]
xorps xmm0, xmm0
call fcn.0044b500
movss xmm1, dword [0x4ad1f0]
xorps xmm0, xmm0
call fcn.0044b500
call fcn.0041a5a0
xor edx, edx
mov byte [ebp - 0x7b], 0
div edi
xorps xmm0, xmm0
mov dword [ebp - 0x40], 0
mov dh, dl
mov dword [ebp - 0x3c], 0
inc dh
mov al, dh
mov byte [ebp - 0x11], dh
xor al, 0x61
mov byte [ebp - 0x93], dh
mov byte [ebp - 0x92], al
mov ch, dh
mov al, dh
xor ch, 0x61
xor al, 0x63
mov byte [ebp - 0x8d], ch
mov byte [ebp - 0x91], al
mov ah, dh
mov al, dh
mov byte [ebp - 0x88], ch
xor al, 0x74
mov byte [ebp - 0x85], ch
mov byte [ebp - 0x90], al
mov dl, dh
mov al, dh
mov byte [ebp - 0x81], ch
xor al, 0x69
mov cl, dh
mov byte [ebp - 0x8f], al
xor ah, 0x74
mov al, dh
mov byte [ebp - 0x8c], ah
xor al, 0x76
mov byte [ebp - 0x80], ah
mov byte [ebp - 0x8e], al
xor dl, 0x69
mov al, dh
mov byte [ebp - 0x83], dl
xor al, 0x65
mov byte [ebp - 0x7f], dl
mov byte [ebp - 0x8b], al
xor cl, 0x6e
mov al, dh
mov byte [ebp - 0x84], cl
xor al, 0x73
mov byte [ebp - 0x7d], cl
mov byte [ebp - 0x8a], al
mov al, dh
xor al, 0x20
mov byte [ebp - 0x89], al
mov al, dh
xor al, 0x6e
mov byte [ebp - 0x87], al
mov al, dh
xor al, 0x20
mov byte [ebp - 0x86], al
mov al, dh
xor al, 0x6d
mov byte [ebp - 0x82], al
mov al, dh
xor al, 0x6f
mov byte [ebp - 0x7e], al
mov al, dh
xor al, 0x2e
push 0x20
mov byte [ebp - 0x7c], al
movups xmmword [ebp - 0x50], xmm0
call fcn.00481d9b
add esp, 4
mov dword [ebp - 0x50], eax
mov dword [ebp - 0x40], 0x17
mov dword [ebp - 0x3c], 0x1f
mov ch, byte [ebp - 0x11]
xorps xmm0, xmm0
movups xmmword [eax], xmm0
mov dword [eax + 0x10], 0
xor edx, edx
mov dword [eax + 0x14], 0
nop word [eax + eax]
mov cl, byte [ebp + edx - 0x92]
lea eax, [ebp - 0x50]
xor cl, ch
cmp dword [ebp - 0x3c], 0xf
cmova eax, dword [ebp - 0x50]
mov byte [edx + eax], cl
inc edx
cmp edx, 0x17
jb 0x40fa10
mov dword [ebp - 4], 0x17
lea ecx, [ebp - 0x50]
cmp dword [ebp - 0x3c], 0xf
cmova ecx, dword [ebp - 0x50]
call fcn.0040cd50
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x3c]
cmp ecx, 0xf
jbe 0x40fa81
mov edx, dword [ebp - 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40fa77
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x40fa77
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00482021
add esp, 8
call fcn.0041a5a0
xor edx, edx
mov byte [ebp - 0x19], 0
div edi
xorps xmm0, xmm0
mov dword [ebp - 0x40], 0
mov cl, dl
mov dword [ebp - 0x3c], 0
inc cl
mov al, cl
mov byte [ebp - 0x11], cl
xor al, 0x41
mov byte [ebp - 0x2c], cl
mov byte [ebp - 0x2b], al
mov al, cl
xor al, 0x74
mov byte [ebp - 0x2a], al
mov al, cl
xor al, 0x74
mov byte [ebp - 0x29], al
mov al, cl
xor al, 0x61
mov byte [ebp - 0x28], al
mov al, cl
xor al, 0x63
mov byte [ebp - 0x27], al
mov al, cl
xor al, 0x6b
mov byte [ebp - 0x26], al
mov al, cl
xor al, 0x43
mov byte [ebp - 0x25], al
mov al, cl
xor al, 0x6f
mov byte [ebp - 0x24], al
mov al, cl
xor al, 0x6c
mov byte [ebp - 0x23], al
mov al, cl
xor al, 0x6c
mov byte [ebp - 0x22], al
mov al, cl
xor al, 0x69
mov byte [ebp - 0x21], al
mov al, cl
xor al, 0x73
mov byte [ebp - 0x20], al
mov al, cl
xor al, 0x69
mov byte [ebp - 0x1f], al
mov al, cl
xor al, 0x6f
mov byte [ebp - 0x1e], al
mov al, cl
xor al, 0x6e
mov byte [ebp - 0x1d], al
mov al, cl
xor al, 0x4b
mov byte [ebp - 0x1c], al
mov al, cl
xor al, 0x65
mov byte [ebp - 0x1b], al
mov al, cl
xor al, 0x79
push 0x20
mov byte [ebp - 0x1a], al
movups xmmword [ebp - 0x50], xmm0
call fcn.00481d9b
mov dl, byte [ebp - 0x11]
xorps xmm0, xmm0
mov dword [ebp - 0x50], eax
add esp, 4
mov dword [ebp - 0x40], 0x12
xor esi, esi
mov dword [ebp - 0x3c], 0x1f
movups xmmword [eax], xmm0
mov word [eax + 0x10], 0
mov byte [eax + 0x12], 0
nop dword [eax + eax]
mov cl, byte [ebp + esi - 0x2b]
lea eax, [ebp - 0x50]
xor cl, dl
cmp dword [ebp - 0x3c], 0xf
cmova eax, dword [ebp - 0x50]
mov byte [eax + esi], cl
inc esi
cmp esi, 0x12
jb 0x40fb60
mov dword [ebp - 4], 0x18
lea eax, [ebp - 0x50]
cmp dword [ebp - 0x3c], 0xf
push 0x602e3d
cmova eax, dword [ebp - 0x50]
push eax
call fcn.0047e100
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x3c]
cmp ecx, 0xf
jbe 0x40fbd4
mov edx, dword [ebp - 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40fbca
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x40fbca
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00482021
add esp, 8
movss xmm1, dword [0x4ad1f0]
xorps xmm0, xmm0
call fcn.0044b500
movss xmm1, dword [0x4ad1f0]
xorps xmm0, xmm0
call fcn.0044b500
push dword [ebp - 0x64]
lea ecx, [ebp - 0xd0]
push str.activates_a_hitbox_rectangle_from_the_characters_rectangle_list_over_a_frame_range.
call fcn.0041b760
xorps xmm0, xmm0
mov dword [ebp - 0x40], 0
push 0x60
mov edi, eax
mov dword [ebp - 0x3c], 0
movups xmmword [ebp - 0x50], xmm0
call fcn.00481d9b
add esp, 4
mov dword [ebp - 0x40], 0x54
mov esi, eax
mov dword [ebp - 0x3c], 0x5f
mov dword [ebp - 0x50], esi
push 0x54
push 0
push esi
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov byte [esi + 0x54], 0
xor edx, edx
nop
mov cl, byte [edi + edx + 1]
lea eax, [ebp - 0x50]
xor cl, byte [edi]
cmp dword [ebp - 0x3c], 0xf
cmova eax, dword [ebp - 0x50]
mov byte [eax + edx], cl
inc edx
cmp edx, 0x54
jb 0x40fc50
mov dword [ebp - 4], 0x19
lea ecx, [ebp - 0x50]
cmp dword [ebp - 0x3c], 0xf
cmova ecx, dword [ebp - 0x50]
call fcn.0040cd50
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x3c]
cmp ecx, 0xf
jbe 0x40fcbe
mov edx, dword [ebp - 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40fcb4
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x40fcb4
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00482021
add esp, 8
push 0x603108
mov ecx, 0x601e38
call fcn.0041c780
mov edi, dword [ebp - 0xd8]
xor edx, edx
div edi
xorps xmm0, xmm0
mov byte [ebp - 0x19], 0
mov cl, dl
mov dword [ebp - 0x40], 0
inc cl
mov dword [ebp - 0x3c], 0
mov al, cl
mov byte [ebp - 0x11], cl
xor al, 0x44
mov byte [ebp - 0x2c], cl
mov byte [ebp - 0x2b], al
mov al, cl
xor al, 0x61
mov byte [ebp - 0x2a], al
mov al, cl
xor al, 0x6d
mov byte [ebp - 0x29], al
mov al, cl
xor al, 0x61
mov byte [ebp - 0x28], al
mov al, cl
xor al, 0x67
mov byte [ebp - 0x27], al
mov al, cl
xor al, 0x65
mov byte [ebp - 0x26], al
mov al, cl
xor al, 0x43
mov byte [ebp - 0x25], al
mov al, cl
xor al, 0x6f
mov byte [ebp - 0x24], al
mov al, cl
xor al, 0x6c
mov byte [ebp - 0x23], al
mov al, cl
xor al, 0x6c
mov byte [ebp - 0x22], al
mov al, cl
xor al, 0x69
mov byte [ebp - 0x21], al
mov al, cl
xor al, 0x73
mov byte [ebp - 0x20], al
mov al, cl
xor al, 0x69
mov byte [ebp - 0x1f], al
mov al, cl
xor al, 0x6f
mov byte [ebp - 0x1e], al
mov al, cl
xor al, 0x6e
mov byte [ebp - 0x1d], al
mov al, cl
xor al, 0x4b
mov byte [ebp - 0x1c], al
mov al, cl
xor al, 0x65
mov byte [ebp - 0x1b], al
mov al, cl
xor al, 0x79
push 0x20
mov byte [ebp - 0x1a], al
movups xmmword [ebp - 0x50], xmm0
call fcn.00481d9b
mov ch, byte [ebp - 0x11]
xorps xmm0, xmm0
mov dword [ebp - 0x50], eax
add esp, 4
mov dword [ebp - 0x40], 0x12
xor edx, edx
mov dword [ebp - 0x3c], 0x1f
movups xmmword [eax], xmm0
mov word [eax + 0x10], 0
mov byte [eax + 0x12], 0
nop dword [eax + eax]
mov cl, byte [ebp + edx - 0x2b]
lea eax, [ebp - 0x50]
xor cl, ch
cmp dword [ebp - 0x3c], 0xf
cmova eax, dword [ebp - 0x50]
mov byte [eax + edx], cl
inc edx
cmp edx, 0x12
jb 0x40fdb0
mov dword [ebp - 4], 0x1a
lea eax, [ebp - 0x50]
cmp dword [ebp - 0x3c], 0xf
push 0x602e3d
cmova eax, dword [ebp - 0x50]
push eax
call fcn.0047e100
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x3c]
cmp ecx, 0xf
jbe 0x40fe24
mov edx, dword [ebp - 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x40fe1a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x40fe1a
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00482021
add esp, 8
movss xmm1, dword [0x4ad1f0]
xorps xmm0, xmm0
call fcn.0044b500
movss xmm1, dword [0x4ad1f0]
xorps xmm0, xmm0
call fcn.0044b500
push 0x603108
mov ecx, 0x601e38
call fcn.0041c780
xor edx, edx
div edi
mov cl, dl
inc cl
mov al, cl
mov byte [ebp - 0x11], cl
xor al, 0x61
mov byte [ebp - 0xad], cl
mov byte [ebp - 0xac], al
mov dl, cl
mov al, cl
xor dl, 0x74
xor al, 0x63
mov byte [ebp - 0xa6], dl
mov byte [ebp - 0xab], al
mov dh, cl
mov al, cl
mov byte [ebp - 0x9d], dl
xor al, 0x74
mov byte [ebp - 0x95], dl
mov byte [ebp - 0xaa], al
xor dh, 0x61
mov al, cl
mov dl, byte [ebp - 0x11]
xor al, 0x69
mov byte [ebp - 0xa7], dh
mov byte [ebp - 0xa9], al
mov ch, cl
mov al, cl
mov byte [ebp - 0xa2], dh
xor al, 0x76
mov byte [ebp - 0x94], dh
mov byte [ebp - 0xa8], al
mov ah, cl
mov al, cl
xor ah, 0x20
xor al, 0x65
mov byte [ebp - 0xa1], ah
mov byte [ebp - 0xa5], al
xor ch, 0x65
mov al, cl
mov byte [ebp - 0x99], ah
xor al, 0x73
mov byte [ebp - 0x97], ch
mov byte [ebp - 0xa4], al
mov al, cl
xor al, 0x20
mov byte [ebp - 0xa3], al
mov al, cl
xor al, 0x68
mov byte [ebp - 0xa0], al
mov al, cl
xor al, 0x75
xor cl, 0x72
mov byte [ebp - 0x9f], al
mov al, byte [ebp - 0x11]
xor al, 0x72
mov byte [ebp - 0x98], cl
mov byte [ebp - 0x9e], al
mov al, byte [ebp - 0x11]
xor al, 0x62
mov byte [ebp - 0x9c], al
mov al, byte [ebp - 0x11]
xor al, 0x6f
mov byte [ebp - 0x9b], al
mov al, byte [ebp - 0x11]
xor al, 0x78
mov byte [ebp - 0x9a], al
mov al, byte [ebp - 0x11]
xor al, 0x63
mov byte [ebp - 0x96], al
mov al, dl
xor al, 0x6e
mov byte [ebp - 0x90], ch
mov byte [ebp - 0x93], al
xorps xmm0, xmm0
mov al, dl
mov byte [ebp - 0x8f], ah
xor al, 0x67
mov byte [ebp - 0x8c], ch
mov byte [ebp - 0x92], al
mov al, dl
xor al, 0x6c
mov byte [ebp - 0x8b], cl
mov byte [ebp - 0x91], al
mov al, dl
xor al, 0x6f
mov byte [ebp - 0x8a], ah
mov byte [ebp - 0x8e], al
mov al, dl
xor al, 0x76
mov byte [ebp - 0x89], dh
mov byte [ebp - 0x8d], al
mov al, dl
xor al, 0x66
mov byte [ebp - 0x88], ah
mov byte [ebp - 0x87], al
mov al, dl
xor al, 0x6d
mov byte [ebp - 0x86], cl
mov byte [ebp - 0x84], al
mov al, dl
xor al, 0x6e
mov byte [ebp - 0x85], dh
mov byte [ebp - 0x7f], al
mov al, dl
xor al, 0x67
mov byte [ebp - 0x83], ch
mov byte [ebp - 0x7e], al
mov al, dl
xor al, 0x2e
mov byte [ebp - 0x82], ah
push 0x40
mov byte [ebp - 0x81], cl
mov byte [ebp - 0x80], dh
mov byte [ebp - 0x7d], ch
mov byte [ebp - 0x7c], al
mov byte [ebp - 0x7b], 0
movups xmmword [ebp - 0x50], xmm0
mov dword [ebp - 0x40], 0
mov dword [ebp - 0x3c], 0
call fcn.00481d9b
add esp, 4
mov dword [ebp - 0x40], 0x31
mov esi, eax
mov dword [ebp - 0x3c], 0x3f
mov dword [ebp - 0x50], esi
push 0x31
push 0
push esi
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov byte [esi + 0x31], 0
xor edx, edx
nop word [eax + eax]
mov cl, byte [ebp + edx - 0xac]
lea eax, [ebp - 0x50]
xor cl, byte [ebp - 0x11]
cmp dword [ebp - 0x3c], 0xf
cmova eax, dword [ebp - 0x50]
mov byte [eax + edx], cl
inc edx
cmp edx, 0x31
jb 0x410050
mov dword [ebp - 4], 0x1b
lea ecx, [ebp - 0x50]
cmp dword [ebp - 0x3c], 0xf
cmova ecx, dword [ebp - 0x50]
call fcn.0040cd50
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x3c]
cmp ecx, 0xf
jbe 0x4100c2
mov edx, dword [ebp - 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4100b8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4100b8
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00482021
add esp, 8
push 0x603108
mov ecx, 0x601e38
call fcn.0041c780
xor edx, edx
mov byte [ebp - 0x19], 0
div edi
lea ecx, [ebp - 0x24]
inc dl
mov al, dl
mov byte [ebp - 0x24], dl
xor al, 0x54
mov byte [ebp - 0x23], al
mov al, dl
xor al, 0x72
mov byte [ebp - 0x22], al
mov al, dl
xor al, 0x69
mov byte [ebp - 0x21], al
mov al, dl
xor al, 0x67
mov byte [ebp - 0x20], al
mov al, dl
xor al, 0x67
mov byte [ebp - 0x1f], al
mov al, dl
xor al, 0x65
mov byte [ebp - 0x1e], al
mov al, dl
xor al, 0x72
mov byte [ebp - 0x1d], al
mov al, dl
xor al, 0x4b
mov byte [ebp - 0x1c], al
mov al, dl
xor al, 0x65
xor dl, 0x79
mov byte [ebp - 0x1b], al
lea eax, [ebp - 0x94]
push eax
mov byte [ebp - 0x1a], dl
call fcn.00418260
mov dword [ebp - 4], 0x1c
cmp dword [eax + 0x14], 0xf
jbe 0x410141
mov eax, dword [eax]
push 0x602e3d
push eax
call fcn.0047e100
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x80]
cmp ecx, 0xf
jbe 0x41018c
mov edx, dword [ebp - 0x94]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x410182
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x410182
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00482021
add esp, 8
movss xmm1, dword [0x4ad1f0]
xorps xmm0, xmm0
call fcn.0044b500
movss xmm1, dword [0x4ad1f0]
xorps xmm0, xmm0
call fcn.0044b500
push 0x603108
mov ecx, 0x601e38
call fcn.0041c780
xor edx, edx
div edi
mov dh, dl
inc dh
mov al, dh
mov byte [ebp - 0x11], dh
xor al, 0x64
mov byte [ebp - 0x9e], dh
mov byte [ebp - 0x9d], al
mov ah, dh
mov al, dh
xor ah, 0x65
xor al, 0x65
mov byte [ebp - 0x9a], ah
mov byte [ebp - 0x9c], al
mov ch, dh
mov al, dh
mov byte [ebp - 0x95], ah
xor al, 0x74
mov byte [ebp - 0x90], ah
mov byte [ebp - 0x9b], al
mov dl, dh
mov al, dh
mov byte [ebp - 0x8b], ah
xor al, 0x72
mov cl, dh
mov byte [ebp - 0x99], al
xor cl, 0x20
mov al, dh
mov byte [ebp - 0x8f], cl
xor al, 0x6d
mov byte [ebp - 0x88], cl
mov byte [ebp - 0x98], al
xor ch, 0x74
mov al, dh
mov byte [ebp - 0x92], ch
xor al, 0x69
xor dl, 0x73
mov byte [ebp - 0x97], al
mov al, dh
xor al, 0x6e
mov byte [ebp - 0x89], dl
mov byte [ebp - 0x96], al
mov al, dh
xor al, 0x73
mov byte [ebp - 0x94], al
mov al, dh
xor al, 0x20
mov byte [ebp - 0x93], al
mov al, dh
xor al, 0x68
mov byte [ebp - 0x91], al
mov al, dh
xor al, 0x6d
mov byte [ebp - 0x8e], al
mov al, dh
xor al, 0x6f
mov byte [ebp - 0x8d], al
mov al, dh
xor al, 0x76
mov byte [ebp - 0x8c], al
mov al, dh
xor al, 0x27
mov byte [ebp - 0x8a], al
mov al, dh
xor al, 0x63
mov byte [ebp - 0x87], al
mov al, dh
xor al, 0x61
mov byte [ebp - 0x86], al
mov al, dh
xor al, 0x6e
mov byte [ebp - 0x85], al
xorps xmm0, xmm0
mov al, dh
mov byte [ebp - 0x83], ah
xor al, 0x63
mov byte [ebp - 0x81], cl
mov byte [ebp - 0x84], al
mov al, dh
xor al, 0x6c
mov byte [ebp - 0x7e], dl
mov byte [ebp - 0x82], al
mov al, dh
xor al, 0x6c
mov byte [ebp - 0x7d], ch
mov byte [ebp - 0x80], al
mov al, dh
xor al, 0x69
mov byte [ebp - 0x7b], 0
mov byte [ebp - 0x7f], al
mov al, dh
xor al, 0x2e
mov dword [ebp - 0x40], 0
push 0x30
mov byte [ebp - 0x7c], al
movups xmmword [ebp - 0x50], xmm0
mov dword [ebp - 0x3c], 0
call fcn.00481d9b
mov dl, byte [ebp - 0x11]
xorps xmm0, xmm0
mov dword [ebp - 0x50], eax
add esp, 4
mov dword [ebp - 0x40], 0x22
xor esi, esi
mov dword [ebp - 0x3c], 0x2f
movups xmmword [eax], xmm0
movups xmmword [eax + 0x10], xmm0
mov word [eax + 0x20], 0
mov byte [eax + 0x22], 0
mov cl, byte [ebp + esi - 0x9d]
lea eax, [ebp - 0x50]
xor cl, dl
cmp dword [ebp - 0x3c], 0xf
cmova eax, dword [ebp - 0x50]
mov byte [eax + esi], cl
inc esi
cmp esi, 0x22
jb 0x410342
mov dword [ebp - 4], 0x1d
lea ecx, [ebp - 0x50]
cmp dword [ebp - 0x3c], 0xf
cmova ecx, dword [ebp - 0x50]
call fcn.0040cd50
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x3c]
cmp ecx, 0xf
jbe 0x4103b3
mov edx, dword [ebp - 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4103a9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4103a9
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00482021
add esp, 8
push 0x603108
mov ecx, 0x601e38
call fcn.0041c780
xor edx, edx
mov dword [ebp - 0x68], 6
div edi
xor esi, esi
mov byte [ebp - 0x19], 0
mov ah, dl
mov edi, 0xf
inc ah
mov dword [ebp - 0x64], edi
mov al, ah
mov byte [ebp - 0x11], ah
xor al, 0x65
mov cl, ah
mov byte [ebp - 0xd1], al
xor cl, 0x56
xor cl, ah
mov al, ah
xor al, 0x79
mov ch, ah
mov dl, ah
mov byte [ebp - 0x31], al
mov dh, ah
xor ch, 0x66
xor ch, byte [ebp - 0x11]
lea eax, [ebp - 0x78]
xor dl, 0x78
xor dh, 0x4b
xorps xmm0, xmm0
movups xmmword [ebp - 0x78], xmm0
mov dword [ebp - 0x78], esi
mov word [ebp - 0x74], si
mov byte [ebp - 0x72], 0
mov byte [eax], cl
cmp dword [ebp - 0x64], edi
mov cl, byte [ebp - 0xd1]
cmova eax, dword [ebp - 0x78]
mov byte [eax + 1], ch
lea eax, [ebp - 0x78]
mov ch, byte [ebp - 0x11]
xor dl, ch
cmp dword [ebp - 0x64], edi
cmova eax, dword [ebp - 0x78]
xor dh, ch
mov byte [eax + 2], dl
lea eax, [ebp - 0x78]
cmp dword [ebp - 0x64], edi
cmova eax, dword [ebp - 0x78]
xor cl, ch
mov byte [eax + 3], dh
lea eax, [ebp - 0x78]
cmp dword [ebp - 0x64], edi
cmova eax, dword [ebp - 0x78]
mov byte [eax + 4], cl
lea eax, [ebp - 0x78]
mov cl, byte [ebp - 0x31]
xor cl, ch
cmp dword [ebp - 0x64], edi
cmova eax, dword [ebp - 0x78]
mov byte [eax + 5], cl
mov dword [ebp - 4], 0x1e
lea eax, [ebp - 0x78]
cmp dword [ebp - 0x64], edi
push 0x602e3d
cmova eax, dword [ebp - 0x78]
push eax
call fcn.0047e100
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x64]
cmp ecx, edi
jbe 0x4104cd
mov edx, dword [ebp - 0x78]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x4104c3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x4104c3
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00482021
add esp, 8
movss xmm1, dword [0x4ad1f0]
xorps xmm0, xmm0
call fcn.0044b500
movss xmm1, dword [0x4ad1f0]
xorps xmm0, xmm0
call fcn.0044b500
call fcn.0041a5a0
mov esi, dword [ebp - 0xd8]
xor edx, edx
div esi
xorps xmm0, xmm0
mov byte [ebp - 0x19], 0
mov ah, dl
mov dword [ebp - 0x40], 0
inc ah
mov dword [ebp - 0x3c], 0
mov al, ah
mov byte [ebp - 0x31], ah
xor al, 0x70
mov byte [ebp - 0x30], ah
mov byte [ebp - 0x2f], al
mov dl, ah
mov al, ah
xor dl, 0x61
xor al, 0x6c
mov byte [ebp - 0x29], dl
mov byte [ebp - 0x2e], al
mov cl, ah
mov al, ah
mov byte [ebp - 0x23], dl
xor al, 0x61
xor cl, 0x20
mov byte [ebp - 0x2d], al
mov al, ah
xor al, 0x79
mov byte [ebp - 0x28], cl
mov byte [ebp - 0x2c], al
mov al, ah
xor al, 0x73
mov byte [ebp - 0x21], cl
mov byte [ebp - 0x2b], al
mov al, ah
xor al, 0x20
mov byte [ebp - 0x2a], al
mov al, ah
xor al, 0x76
mov byte [ebp - 0x27], al
mov al, ah
xor al, 0x69
mov byte [ebp - 0x26], al
mov al, ah
xor al, 0x73
mov byte [ebp - 0x25], al
mov al, ah
xor al, 0x75
mov byte [ebp - 0x24], al
mov al, ah
xor al, 0x6c
mov byte [ebp - 0x22], al
mov al, ah
xor al, 0x65
mov byte [ebp - 0x20], al
mov al, ah
xor al, 0x66
mov byte [ebp - 0x1f], al
mov al, ah
xor al, 0x66
mov byte [ebp - 0x1e], al
mov al, ah
xor al, 0x65
mov byte [ebp - 0x1d], al
mov al, ah
xor al, 0x63
mov byte [ebp - 0x1c], al
mov al, ah
xor al, 0x74
mov byte [ebp - 0x1b], al
mov al, ah
xor al, 0x2e
mov byte [ebp - 0x1a], al
movups xmmword [ebp - 0x50], xmm0
push 0x20
call fcn.00481d9b
mov ch, byte [ebp - 0x31]
xorps xmm0, xmm0
mov dword [ebp - 0x50], eax
add esp, 4
mov dword [ebp - 0x40], 0x16
xor edx, edx
mov dword [ebp - 0x3c], 0x1f
movups xmmword [eax], xmm0
mov dword [eax + 0x10], 0
mov word [eax + 0x14], 0
mov byte [eax + 0x16], 0
nop word [eax + eax]
mov cl, byte [ebp + edx - 0x2f]
lea eax, [ebp - 0x50]
xor cl, ch
cmp dword [ebp - 0x3c], 0xf
cmova eax, dword [ebp - 0x50]
mov byte [eax + edx], cl
inc edx
cmp edx, 0x16
jb 0x4105f0
mov dword [ebp - 4], 0x1f
lea ecx, [ebp - 0x50]
cmp dword [ebp - 0x3c], 0xf
cmova ecx, dword [ebp - 0x50]
call fcn.0040cd50
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x3c]
cmp ecx, 0xf
jbe 0x41065e
mov edx, dword [ebp - 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x410654
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x410654
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00482021
add esp, 8
push 0x603108
mov ecx, 0x601e38
call fcn.0041c780
xor edx, edx
mov byte [ebp - 0x19], 0
div esi
xorps xmm0, xmm0
mov dword [ebp - 0x40], 0
inc dl
mov dword [ebp - 0x3c], 0
mov al, dl
mov byte [ebp - 0x31], dl
xor al, 0x4d
mov byte [ebp - 0x2a], dl
mov byte [ebp - 0x29], al
mov cl, dl
mov al, dl
xor cl, 0x65
xor al, 0x6f
mov byte [ebp - 0x24], cl
mov byte [ebp - 0x28], al
mov al, dl
xor al, 0x76
mov byte [ebp - 0x20], cl
mov byte [ebp - 0x27], al
mov al, dl
xor al, 0x65
mov byte [ebp - 0x1e], cl
mov byte [ebp - 0x26], al
mov al, dl
xor al, 0x73
mov byte [ebp - 0x25], al
mov al, dl
xor al, 0x74
mov byte [ebp - 0x23], al
mov al, dl
xor al, 0x20
mov byte [ebp - 0x22], al
mov al, dl
xor al, 0x52
mov byte [ebp - 0x21], al
mov al, dl
xor al, 0x73
mov byte [ebp - 0x1f], al
mov al, dl
xor al, 0x61
mov byte [ebp - 0x1d], al
mov al, dl
xor al, 0x72
mov byte [ebp - 0x1c], al
mov al, dl
xor al, 0x63
mov byte [ebp - 0x1b], al
mov al, dl
xor al, 0x68
push 0x20
mov byte [ebp - 0x1a], al
movups xmmword [ebp - 0x50], xmm0
call fcn.00481d9b
mov ch, byte [ebp - 0x31]
xorps xmm0, xmm0
mov dword [ebp - 0x50], eax
add esp, 4
mov dword [ebp - 0x40], 0x10
xor edx, edx
mov dword [ebp - 0x3c], 0x1f
movups xmmword [eax], xmm0
mov byte [eax + 0x10], 0
mov cl, byte [ebp + edx - 0x29]
lea eax, [ebp - 0x50]
xor cl, ch
cmp dword [ebp - 0x3c], 0xf
cmova eax, dword [ebp - 0x50]
mov byte [edx + eax], cl
inc edx
cmp edx, 0x10
jb 0x410725
mov dword [ebp - 4], 0x20
lea eax, [ebp - 0x50]
cmp dword [ebp - 0x3c], 0xf
push 0x602e0d
cmova eax, dword [ebp - 0x50]
push eax
call fcn.0047e100
mov dword [ebp - 4], 0xffffffff
mov ecx, dword [ebp - 0x3c]
cmp ecx, 0xf
jbe 0x410799
mov edx, dword [ebp - 0x50]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x41078f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x41078f
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.00482021
add esp, 8
push dword [ebp - 0x64]
mov dword [ebp - 0x40], 0
push ecx
lea ecx, [ebp - 0x32]
mov dword [ebp - 0x3c], 0xf
mov byte [ebp - 0x50], 0
call fcn.0041b980
lea eax, [ebp - 0x94]
push eax
call fcn.00418630
sub esp, 8
mov dword [ebp - 4], 0x21
mov ecx, eax
push 0
push 0x100
call fcn.00419ad0
mov edx, 0x602a58
mov ecx, eax
call fcn.0046ec20
add esp, 0x10
lea ecx, [ebp - 0x94]
call fcn.00419b50
push dword [ebp - 0x64]
push ecx
lea ecx, [ebp - 0x25]
call fcn.0041b9a0
xorps xmm0, xmm0
mov dword [ebp - 0x84], 0xb
movups xmmword [ebp - 0x94], xmm0
mov edi, eax
mov dword [ebp - 0x80], 0xf
movq qword [ebp - 0x94], xmm0
xor esi, esi
mov dword [ebp - 0x8c], 0
mov dl, byte [edi + esi + 1]
lea ecx, [ebp - 0x94]
xor dl, byte [edi]
push esi
call fcn.00419a40
inc esi
mov byte [eax], dl
cmp esi, 0xb
jb 0x410832
mov dword [ebp - 4], 0x22
call fcn.00419ad0
push 0x602e15
push eax
call fcn.0047e100
lea ecx, [ebp - 0x94]
mov dword [ebp - 4], 0xffffffff
call fcn.00419b50
push dword [ebp - 0x64]
mov dword [ebp - 0x20], 0x43960000
push ecx
lea ecx, [ebp - 0x68]
mov dword [ebp - 0x1c], 0x42480000
call fcn.0041ba10
lea ecx, [ebp - 0x94]
push ecx
mov ecx, eax
call fcn.00418570
mov ecx, eax
mov dword [ebp - 4], 0x23
call fcn.00419ad0
sub esp, 8
lea edx, [ebp - 0x20]
mov ecx, eax
call fcn.004432d0
add esp, 8
mov byte [ebp - 0x31], al
lea ecx, [ebp - 0x94]
mov dword [ebp - 4], 0xffffffff
call fcn.00419b50
cmp byte [ebp - 0x31], 0
je 0x410913
mov esi, 0x602b70
nop dword [eax + eax]
push 0x602a58
push dword [esi]
call dword [sym.imp.VCRUNTIME140.dll_strstr]
add esp, 8
test eax, eax
je 0x410903
push dword [esi]
push 0x488a98
call fcn.00469690
add esp, 8
add esi, 4
cmp esi, 0x602bbc
jl 0x4108e0
call fcn.00443340
mov esi, dword [0x602c68]
mov edx, dword [esi + 0x46a0]
dec dword [esi + 0x4788]
dec word [esi + 0x5a04]
mov ecx, dword [esi + 0x4788]
mov eax, dword [esi + 0x4790]
shr edx, 2
mov eax, dword [eax + ecx*4 - 4]
mov dword [esi + 0x46a0], eax
test dl, 1
je 0x41095a
test al, 4
jne 0x41095a
mov eax, dword [esi + 0x5a00]
mov dword [esi + 0x3788], eax
mov ecx, 0x486d97
call fcn.0046c2e0
jmp 0x41097c
cmp eax, 5
jne 0x410972
call fcn.0041f850
jmp 0x41097c
cmp eax, 6
jne 0x41097c
call fcn.0041fb70
call fcn.00443340
push 0
push ecx
lea eax, [ebp - 0x20]
mov dword [ebp - 0x20], 0x43eb0000
push eax
mov edx, 3
mov dword [ebp - 0x1c], 0x42a00000
xor ecx, ecx
call fcn.004430c0
add esp, 0xc
test al, al
je 0x410a95
mov ecx, dword [0x602c68]
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 [0x4ad144]
mov byte [eax + 0xac], 1
mov eax, dword [ecx + 0x3e48]
mulss xmm1, dword [0x4ad038]
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.0040dbc0
mov ecx, dword [0x602c68]
mov eax, dword [ecx + 0x3e48]
mov byte [eax + 0xac], 1
mov eax, dword [ecx + 0x3e48]
cmp byte [eax + 0xaf], 0
jne 0x410a5d
movss xmm1, dword [0x4ad1f0]
lea ecx, [ebp - 0x20]
mov dword [ebp - 0x20], 0
mov dword [ebp - 0x1c], 0
call fcn.0044b170
push ecx
lea edx, [ebp - 0x20]
mov dword [ebp - 0x20], 0x42200000
mov ecx, 0x488a9c
mov dword [ebp - 0x1c], 0x41f00000
call fcn.0046a0e0
add esp, 4
test al, al
jne 0x410ab7
movss xmm1, dword [0x4ad1f0]
xorps xmm0, xmm0
call fcn.0044b500
call fcn.0040a0e0
call fcn.00443340
call fcn.00448220
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.0040dae0
call fcn.0040dae0
int3