Function at 0x1403a1983
Capabilities:
Encrypt data using speck

Disassembly:
push rax
pushf
mov eax, 0x58cf5bb6
pushf
not eax
add eax, 0xdd01b727
xor eax, 0xbc3b0677
rol eax, 0xfd
popf
pushf
not eax
add eax, 0x89236c13
xor eax, 0xb3068565
rol eax, 0x6d
popf
pushf
not eax
add eax, 0x96cce82d
xor eax, 0x8f4f1518
rol eax, 0x78
popf
pushf
not eax
add eax, 0xae5f109a
xor eax, 0x9dedab86
rol eax, 0xe0
popf
cmp eax, 0x20
jne 0x1403a19e6
popf
pop rax
jmp 0x1403a3179
cmp eax, 0
jne 0x1403a19f5
popf
pop rax
jmp 0x1403a1bc6
cmp eax, 3
jne 0x1403a1a04
popf
pop rax
jmp 0x1403a1d66
cmp eax, 1
jne 0x1403a1a13
popf
pop rax
jmp 0x1403a1c78
cmp eax, 0xd
jne 0x1403a1a22
popf
pop rax
jmp 0x1403a23b3
cmp eax, 0x1a
jne 0x1403a1a31
popf
pop rax
jmp 0x1403a2e70
cmp eax, 0xe
jne 0x1403a1a40
popf
pop rax
jmp 0x1403a240b
cmp eax, 0xb
jne 0x1403a1a4f
popf
pop rax
jmp 0x1403a2226
cmp eax, 0x19
jne 0x1403a1a5e
popf
pop rax
jmp 0x1403a2dc6
cmp eax, 8
jne 0x1403a1a6d
popf
pop rax
jmp 0x1403a201e
cmp eax, 0x1d
jne 0x1403a1a7c
popf
pop rax
jmp 0x1403a3082
cmp eax, 0x17
jne 0x1403a1a8b
popf
pop rax
jmp 0x1403a2cd9
cmp eax, 0x1c
jne 0x1403a1a9a
popf
pop rax
jmp 0x1403a2fad
cmp eax, 0x12
jne 0x1403a1aa9
popf
pop rax
jmp 0x1403a28d3
cmp eax, 0x18
jne 0x1403a1ab8
popf
pop rax
jmp 0x1403a2d2f
cmp eax, 0x11
jne 0x1403a1ac7
popf
pop rax
jmp 0x1403a2826
cmp eax, 0x1b
jne 0x1403a1ad6
popf
pop rax
jmp 0x1403a2f07
cmp eax, 0x16
jne 0x1403a1ae5
popf
pop rax
jmp 0x1403a2c2c
cmp eax, 0xa
jne 0x1403a1af4
popf
pop rax
jmp 0x1403a218c
cmp eax, 0x14
jne 0x1403a1b03
popf
pop rax
jmp 0x1403a2b6d
cmp eax, 0xf
jne 0x1403a1b12
popf
pop rax
jmp 0x1403a2476
cmp eax, 0x13
jne 0x1403a1b21
popf
pop rax
jmp 0x1403a29a7
cmp eax, 0x15
jne 0x1403a1b30
popf
pop rax
jmp 0x1403a2bce
cmp eax, 2
jne 0x1403a1b3f
popf
pop rax
jmp 0x1403a1cb6
cmp eax, 0x1e
jne 0x1403a1b4e
popf
pop rax
jmp 0x1403a30d3
cmp eax, 0xc
jne 0x1403a1b5d
popf
pop rax
jmp 0x1403a22c1
cmp eax, 7
jne 0x1403a1b6c
popf
pop rax
jmp 0x1403a1fcd
cmp eax, 5
jne 0x1403a1b7b
popf
pop rax
jmp 0x1403a1e4e
cmp eax, 0x1f
jne 0x1403a1b8a
popf
pop rax
jmp 0x1403a312f
cmp eax, 0x10
jne 0x1403a1b99
popf
pop rax
jmp 0x1403a2753
cmp eax, 6
jne 0x1403a1ba8
popf
pop rax
jmp 0x1403a1ea7
cmp eax, 9
jne 0x1403a1bb7
popf
pop rax
jmp 0x1403a20c9
cmp eax, 4
jne 0x1403a1bc6
popf
pop rax
jmp 0x1403a1e30
mov dword [rsp + 0x20], r9d
mov qword [rsp + 0x18], r8
mov qword [rsp + 0x10], rdx
mov qword [rsp + 8], rcx
push rsi
push rdi
sub rsp, 0xd8
mov dword [rsp + 0x7c], 0xffffffff
mov dword [rsp + 0x84], 1
mov rax, qword [rsp + 0xf0]
mov eax, dword [rax + 0x24]
mov dword [rsp + 0xb0], eax
mov rax, qword [rsp + 0xf0]
mov eax, dword [rax + 0x28]
mov dword [rsp + 0xb4], eax
mov dword [rsp + 0x80], 0
mov dword [rsp + 0x58], 0
jmp 0x1403a1cb6
mov eax, dword [rsp + 0x58]
jmp 0x1403a1c7d
inc eax
mov dword [rsp + 0x58], eax
push rax
pushf
mov eax, 0xa038191c
pushf
not eax
add eax, 0xc0b4a4cc
xor eax, 0xca056609
rol eax, 0x3e
popf
pushf
not eax
add eax, 0xb79fb448
xor eax, 0xfd0338de
rol eax, 0x10
popf
jmp 0x1403a19d7
mov eax, dword [rsp + 0x108]
cmp dword [rsp + 0x58], eax
jge 0x1403a1d20
push rax
pushf
mov eax, 0x88dba309
pushf
not eax
add eax, 0xd42db39d
xor eax, 0xc83d9b49
rol eax, 0x3d
popf
pushf
not eax
add eax, 0xbe883b58
xor eax, 0xae526f40
rol eax, 0x9f
popf
pushf
not eax
add eax, 0xf62103b1
xor eax, 0xcf13da3c
rol eax, 0xd0
popf
pushf
not eax
add eax, 0xfa6c713d
xor eax, 0xd00e104d
rol eax, 0x37
popf
jmp 0x1403a19d7
push rax
pushf
mov eax, 0xaaebe2f3
pushf
not eax
add eax, 0xf61cac69
xor eax, 0xdaeab3cd
rol eax, 0xd7
popf
pushf
not eax
add eax, 0x920ab06d
xor eax, 0xda92ed5a
rol eax, 0x47
popf
pushf
not eax
add eax, 0xd664a188
xor eax, 0xaccd6690
rol eax, 0x26
popf
jmp 0x1403a19d7
movsxd rax, dword [rsp + 0x58]
imul rax, rax, 0x28
mov rcx, qword [rsp + 0x100]
movss xmm0, dword [rcx + rax]
movss dword [rsp + 0x78], xmm0
movss xmm0, dword [rsp + 0x78]
comiss xmm0, dword [0x140118918]
jbe 0x1403a1dea
push rax
pushf
mov eax, 0x8b9b9675
pushf
not eax
add eax, 0x87e0164e
xor eax, 0xe87fe855
rol eax, 0xd9
popf
pushf
not eax
add eax, 0x92422428
xor eax, 0xb70cf9e6
rol eax, 3
popf
pushf
not eax
add eax, 0xf26e80c0
xor eax, 0xe4421a36
rol eax, 0x2c
popf
pushf
not eax
add eax, 0xaff83cbe
xor eax, 0x93184265
rol eax, 0x9b
popf
jmp 0x1403a19d7
push rax
pushf
mov eax, 0x7f4ebff
pushf
not eax
add eax, 0xa7252651
xor eax, 0x8feef2a9
rol eax, 0x92
popf
pushf
not eax
add eax, 0xa602d37b
xor eax, 0xca2c6d73
rol eax, 0x95
popf
pushf
not eax
add eax, 0xd322e8a2
xor eax, 0x8193e6c5
rol eax, 0x6f
popf
jmp 0x1403a19d7
movss xmm1, dword [rsp + 0x78]
mov rcx, qword [rsp + 0xf8]
call fcn.140234dfd
movss dword [rsp + 0x88], xmm0
jmp 0x1403a1ea7
movss xmm0, dword [rsp + 0x78]
xorps xmm0, xmmword [0x140119f10]
movaps xmm1, xmm0
mov rcx, qword [rsp + 0xf8]
call fcn.14016c1f3
movss dword [rsp + 0x88], xmm0
push rax
pushf
mov eax, 0xe82e42bb
pushf
not eax
add eax, 0xec870eed
xor eax, 0xbf798285
rol eax, 0x5d
popf
pushf
not eax
add eax, 0x86304e21
xor eax, 0xeecc3c4a
rol eax, 0xd6
popf
jmp 0x1403a19d7
movss xmm0, dword [rsp + 0x88]
movss dword [rsp + 0x60], xmm0
movsxd rax, dword [rsp + 0x58]
imul rax, rax, 0x28
mov rcx, qword [rsp + 0x100]
movzx eax, byte [rcx + rax + 0x20]
mov rcx, qword [rsp + 0xf0]
mov dword [rcx + 0x24], eax
movsxd rax, dword [rsp + 0x58]
imul rax, rax, 0x28
mov rcx, qword [rsp + 0x100]
movzx eax, byte [rcx + rax + 0x21]
mov rcx, qword [rsp + 0xf0]
mov dword [rcx + 0x28], eax
mov rax, qword [rsp + 0xf0]
mov eax, dword [rax + 0x24]
cvtsi2ss xmm0, rax
movss xmm1, dword [0x140118974]
divss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0x94], xmm0
mov rax, qword [rsp + 0xf0]
mov eax, dword [rax + 0x28]
cvtsi2ss xmm0, rax
movss xmm1, dword [0x140118974]
divss xmm1, xmm0
movaps xmm0, xmm1
movss dword [rsp + 0xa0], xmm0
mov rax, qword [rsp + 0xf0]
mov ecx, dword [rax + 0x24]
call fcn.140325394
movss dword [rsp + 0x98], xmm0
mov rax, qword [rsp + 0xf0]
mov ecx, dword [rax + 0x28]
call fcn.140325394
movss dword [rsp + 0xa4], xmm0
mov dword [rsp + 0x5c], 0
jmp 0x1403a201e
mov eax, dword [rsp + 0x5c]
jmp 0x1403a1fd2
inc eax
mov dword [rsp + 0x5c], eax
push rax
pushf
mov eax, 0x6e684a02
pushf
not eax
add eax, 0xb9c06c0d
xor eax, 0xb7caf33d
rol eax, 0xae
popf
pushf
not eax
add eax, 0xe8bac179
xor eax, 0x86fed8ad
rol eax, 0xe7
popf
pushf
not eax
add eax, 0xc92114c7
xor eax, 0x80139fed
rol eax, 0x58
popf
jmp 0x1403a19d7
movsxd rax, dword [rsp + 0x58]
imul rax, rax, 0x28
mov rcx, qword [rsp + 0x100]
mov eax, dword [rcx + rax + 0x10]
cmp dword [rsp + 0x5c], eax
jge 0x1403a2070
push rax
pushf
mov eax, 0x66d36c42
pushf
not eax
add eax, 0x8b8feffa
xor eax, 0x910c1a54
rol eax, 4
popf
pushf
not eax
add eax, 0xfa27c9da
xor eax, 0x9f1e2bd6
rol eax, 0xbd
popf
jmp 0x1403a19d7
push rax
pushf
mov eax, 0x2c12539f
pushf
not eax
add eax, 0xbbe8434d
xor eax, 0x9bbee869
rol eax, 0xb
popf
pushf
not eax
add eax, 0x8ac64fac
xor eax, 0xe2d3c511
rol eax, 0x37
popf
pushf
not eax
add eax, 0x9509769e
xor eax, 0xaa0c8078
rol eax, 9
popf
pushf
not eax
add eax, 0xf459bd78
xor eax, 0x98c81af3
rol eax, 0xba
popf
jmp 0x1403a19d7
movsxd rax, dword [rsp + 0x80]
imul rax, rax, 0x18
mov rcx, qword [rsp + 0x110]
push rax
not rax
sub rcx, rax
pop rax
sub rcx, 1
mov rax, rcx
mov qword [rsp + 0x50], rax
mov rax, qword [rsp + 0x50]
cmp dword [rax + 0x14], 0
je 0x1403a2159
push rax
pushf
mov eax, 0x65e5461b
pushf
not eax
add eax, 0x9dbb3e59
xor eax, 0xe06c1784
rol eax, 0xe2
popf
pushf
not eax
add eax, 0xc851f29d
xor eax, 0x8e5a09e3
rol eax, 0xd3
popf
pushf
not eax
add eax, 0xbad8d61b
xor eax, 0xff1689c6
rol eax, 0x79
popf
pushf
not eax
add eax, 0x83372731
xor eax, 0xc448b906
rol eax, 0xcb
popf
jmp 0x1403a19d7
push rax
pushf
mov eax, 0x15e60c35
pushf
not eax
add eax, 0xd1ac6d63
xor eax, 0xd4f17799
rol eax, 0xc8
popf
pushf
not eax
add eax, 0xe5e42831
xor eax, 0xb8cd73c1
rol eax, 0x28
popf
jmp 0x1403a19d7
mov rax, qword [rsp + 0x50]
cmp dword [rax + 4], 0
je 0x1403a21cd
push rax
pushf
mov eax, 0x2f7cb443
pushf
not eax
add eax, 0xe62a0965
xor eax, 0xe16b85cc
rol eax, 1
popf
pushf
not eax
add eax, 0x94b225bb
xor eax, 0xc92483e0
rol eax, 6
popf
jmp 0x1403a19d7
push rax
pushf
mov eax, 0x16808624
pushf
not eax
add eax, 0x99be9791
xor eax, 0xd4cf1982
rol eax, 0xde
popf
pushf
not eax
add eax, 0xbf714650
xor eax, 0x9393eef0
rol eax, 0xaa
popf
pushf
not eax
add eax, 0xb1f06c75
xor eax, 0xcc28804d
rol eax, 0x6e
popf
pushf
not eax
add eax, 0xb09604ec
xor eax, 0x9a24cee0
rol eax, 0x1d
popf
jmp 0x1403a19d7
mov rax, qword [rsp + 0x50]
cmp dword [rax + 8], 0
je 0x1403a228e
push rax
pushf
mov eax, 0x36c96930
pushf
not eax
add eax, 0x929c150d
xor eax, 0x8dde340d
rol eax, 0xa7
popf
pushf
not eax
add eax, 0x877c422f
xor eax, 0xed84fbef
rol eax, 0x49
popf
pushf
not eax
add eax, 0xecb33ba9
xor eax, 0xe6dbcd12
rol eax, 0xcd
popf
pushf
not eax
add eax, 0x81ebbfcf
xor eax, 0xbbf01014
rol eax, 0xe0
popf
jmp 0x1403a19d7
push rax
pushf
mov eax, 0x58aeab6c
pushf
not eax
add eax, 0xa3164bda
xor eax, 0xac4055cf
rol eax, 0xe2
popf
pushf
not eax
add eax, 0x8ab11f5f
xor eax, 0xf21143d3
rol eax, 0x19
popf
jmp 0x1403a19d7
movsxd rax, dword [rsp + 0x58]
imul rax, rax, 0x28
movsxd rcx, dword [rsp + 0x5c]
imul rcx, rcx, 0x1c
mov rdx, qword [rsp + 0x100]
add rcx, qword [rdx + rax + 0x18]
mov rax, rcx
mov qword [rsp + 0x70], rax
movsxd rax, dword [rsp + 0x58]
imul rax, rax, 0x28
mov rcx, qword [rsp + 0x100]
cmp qword [rcx + rax + 8], 0
jne 0x1403a235a
push rax
pushf
mov eax, 0x3f7ad904
pushf
not eax
add eax, 0x903b2226
xor eax, 0x9649d262
rol eax, 0xd9
popf
pushf
not eax
add eax, 0xc67ebe6e
xor eax, 0xbca1dfa5
rol eax, 0x60
popf
pushf
not eax
add eax, 0x9ebd2484
xor eax, 0xac23922b
rol eax, 0x4e
popf
pushf
not eax
add eax, 0xa39bf065
xor eax, 0xd9254451
rol eax, 0x88
popf
jmp 0x1403a19d7
push rax
pushf
mov eax, 0xe07649ff
pushf
not eax
add eax, 0xa892b2fd
xor eax, 0x898df79e
rol eax, 0xe3
popf
pushf
not eax
add eax, 0xa7c98888
xor eax, 0xc532c561
rol eax, 0x98
popf
pushf
not eax
add eax, 0xefdd7b28
xor eax, 0x91326746
rol eax, 0x3b
popf
pushf
not eax
add eax, 0xc9e92dab
xor eax, 0x8e56c54e
rol eax, 5
popf
jmp 0x1403a19d7
movsxd rax, dword [rsp + 0x58]
imul rax, rax, 0x28
mov rcx, qword [rsp + 0x100]
mov eax, dword [rcx + rax + 4]
add eax, dword [rsp + 0x5c]
mov dword [rsp + 0x8c], eax
jmp 0x1403a2476
movsxd rax, dword [rsp + 0x58]
imul rax, rax, 0x28
movsxd rcx, dword [rsp + 0x5c]
mov rdx, qword [rsp + 0x100]
mov rax, qword [rdx + rax + 8]
mov eax, dword [rax + rcx*4]
mov dword [rsp + 0x8c], eax
push rax
pushf
mov eax, 0x5e93dc65
pushf
not eax
add eax, 0xfe25d48b
xor eax, 0xbea91985
rol eax, 0x7c
popf
pushf
not eax
add eax, 0x9a022c7d
xor eax, 0xe9aa7dca
rol eax, 0xc6
popf
pushf
not eax
add eax, 0xe0b6c339
xor eax, 0xcf7dd91e
rol eax, 0xe1
popf
jmp 0x1403a19d7
mov eax, dword [rsp + 0x8c]
mov dword [rsp + 0xa8], eax
mov edx, dword [rsp + 0xa8]
mov rcx, qword [rsp + 0xf8]
call fcn.140271989
mov dword [rsp + 0x68], eax
mov rax, qword [rsp + 0xf0]
mov eax, dword [rax + 0x1c]
mov dword [rsp + 0x64], eax
mov rax, qword [rsp + 0x50]
mov eax, dword [rax + 0xc]
add eax, dword [rsp + 0x64]
mov rcx, qword [rsp + 0x50]
mov dword [rcx + 0xc], eax
mov rax, qword [rsp + 0x50]
mov eax, dword [rax + 0x10]
add eax, dword [rsp + 0x64]
mov rcx, qword [rsp + 0x50]
mov dword [rcx + 0x10], eax
mov rax, qword [rsp + 0x50]
mov ecx, dword [rsp + 0x64]
mov eax, dword [rax + 4]
sub eax, ecx
mov rcx, qword [rsp + 0x50]
mov dword [rcx + 4], eax
mov rax, qword [rsp + 0x50]
mov ecx, dword [rsp + 0x64]
mov eax, dword [rax + 8]
sub eax, ecx
mov rcx, qword [rsp + 0x50]
mov dword [rcx + 8], eax
lea r9, [rsp + 0xb8]
lea r8, [rsp + 0xac]
mov edx, dword [rsp + 0x68]
mov rcx, qword [rsp + 0xf8]
call fcn.140182982
mov rax, qword [rsp + 0xf0]
mov eax, dword [rax + 0x28]
cvtsi2ss xmm0, rax
movss xmm1, dword [rsp + 0x60]
mulss xmm1, xmm0
movaps xmm0, xmm1
mov rax, qword [rsp + 0xf0]
mov eax, dword [rax + 0x24]
cvtsi2ss xmm1, rax
movss xmm2, dword [rsp + 0x60]
mulss xmm2, xmm1
movaps xmm1, xmm2
lea rax, [rsp + 0xbc]
mov qword [rsp + 0x38], rax
lea rax, [rsp + 0xc0]
mov qword [rsp + 0x30], rax
lea rax, [rsp + 0x9c]
mov qword [rsp + 0x28], rax
lea rax, [rsp + 0x90]
mov qword [rsp + 0x20], rax
movaps xmm3, xmm0
movaps xmm2, xmm1
mov edx, dword [rsp + 0x68]
mov rcx, qword [rsp + 0xf8]
call fcn.1403064e3
mov rax, qword [rsp + 0xf0]
mov eax, dword [rax + 0x28]
cvtsi2ss xmm0, rax
movss xmm1, dword [rsp + 0x60]
mulss xmm1, xmm0
movaps xmm0, xmm1
mov rax, qword [rsp + 0xf0]
mov eax, dword [rax + 0x24]
cvtsi2ss xmm1, rax
movss xmm2, dword [rsp + 0x60]
mulss xmm2, xmm1
movaps xmm1, xmm2
mov rax, qword [rsp + 0x50]
mov rcx, qword [rsp + 0xf0]
mov ecx, dword [rcx + 0x28]
mov eax, dword [rax + 8]
sub eax, ecx
jmp 0x1403a25f5
inc eax
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0xf0]
mov edx, dword [rdx + 0x24]
mov ecx, dword [rcx + 4]
sub ecx, edx
jmp 0x1403a260d
inc ecx
mov rdx, qword [rsp + 0x50]
movsxd rdx, dword [rdx + 0xc]
mov r8, qword [rsp + 0xf0]
mov r8, qword [r8 + 0x30]
push rdx
not rdx
sub r8, rdx
pop rdx
sub r8, 1
mov rdx, r8
mov r8, qword [rsp + 0x50]
mov r9, qword [rsp + 0xf0]
mov r8d, dword [r8 + 0x10]
imul r8d, dword [r9 + 0x18]
movsxd r8, r8d
push r8
not r8
sub rdx, r8
pop r8
sub rdx, 1
mov r8d, dword [rsp + 0x68]
mov dword [rsp + 0x48], r8d
xorps xmm2, xmm2
movss dword [rsp + 0x40], xmm2
xorps xmm2, xmm2
movss dword [rsp + 0x38], xmm2
movss dword [rsp + 0x30], xmm0
movss dword [rsp + 0x28], xmm1
mov r8, qword [rsp + 0xf0]
mov r8d, dword [r8 + 0x18]
mov dword [rsp + 0x20], r8d
mov r9d, eax
mov r8d, ecx
mov rcx, qword [rsp + 0xf8]
call fcn.140185bcf
mov rax, qword [rsp + 0xf0]
cmp dword [rax + 0x24], 1
jbe 0x1403a26fa
push rax
pushf
mov eax, 0x6188c87e
pushf
not eax
add eax, 0x9dde974f
xor eax, 0xc4411d03
rol eax, 0x2b
popf
pushf
not eax
add eax, 0xe38e922a
xor eax, 0xc6e6439a
rol eax, 3
popf
pushf
not eax
add eax, 0x981dadf8
xor eax, 0xc3d01e58
rol eax, 0xa
popf
jmp 0x1403a19d7
push rax
pushf
mov eax, 0x65bf2b4f
pushf
not eax
add eax, 0xa0427973
xor eax, 0xb316e5c0
rol eax, 0x22
popf
pushf
not eax
add eax, 0xa21a5db0
xor eax, 0xa0ee4be6
rol eax, 0xaf
popf
pushf
not eax
add eax, 0x9a291a3f
xor eax, 0x9f7f5fe1
rol eax, 0xbd
popf
pushf
not eax
add eax, 0xf7bc06a2
xor eax, 0xd0b0f838
rol eax, 0x52
popf
jmp 0x1403a19d7
mov rax, qword [rsp + 0x50]
movsxd rax, dword [rax + 0xc]
mov rcx, qword [rsp + 0xf0]
mov rcx, qword [rcx + 0x30]
push rax
not rax
sub rcx, rax
pop rax
sub rcx, 1
mov rax, rcx
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0xf0]
mov ecx, dword [rcx + 0x10]
imul ecx, dword [rdx + 0x18]
movsxd rcx, ecx
push rcx
not rcx
sub rax, rcx
pop rcx
sub rax, 1
mov rcx, qword [rsp + 0xf0]
mov ecx, dword [rcx + 0x24]
mov dword [rsp + 0x20], ecx
mov rcx, qword [rsp + 0xf0]
mov r9d, dword [rcx + 0x18]
mov rcx, qword [rsp + 0x50]
mov r8d, dword [rcx + 8]
mov rcx, qword [rsp + 0x50]
mov edx, dword [rcx + 4]
mov rcx, rax
call fcn.1402dcc3c
push rax
pushf
mov eax, 0x97a0ee49
pushf
not eax
add eax, 0xe835e955
xor eax, 0xd27e5967
rol eax, 0xe3
popf
pushf
not eax
add eax, 0xee5b9cff
xor eax, 0xad2c1640
rol eax, 0x35
popf
pushf
not eax
add eax, 0x889a9df7
xor eax, 0xf72b4ddb
rol eax, 1
popf
pushf
not eax
add eax, 0xbdee3554
xor eax, 0xc92e0b73
rol eax, 0xbc
popf
jmp 0x1403a19d7
mov rax, qword [rsp + 0xf0]
cmp dword [rax + 0x28], 1
jbe 0x1403a288d
push rax
pushf
mov eax, 0x24457f90
pushf
not eax
add eax, 0xd554354b
xor eax, 0xba8b512e
rol eax, 0xee
popf
pushf
not eax
add eax, 0xe6fde2f4
xor eax, 0xcd08d54f
rol eax, 0x1f
popf
pushf
not eax
add eax, 0xf36491d0
xor eax, 0xc2fafc74
rol eax, 0xa
popf
pushf
not eax
add eax, 0xa8696b24
xor eax, 0x8e3c5ba3
rol eax, 0xf6
popf
jmp 0x1403a19d7
push rax
pushf
mov eax, 0x88266b08
pushf
not eax
add eax, 0xc190c31d
xor eax, 0x87fd46c4
rol eax, 0x9a
popf
pushf
not eax
add eax, 0xef2859c1
xor eax, 0x84522faa
rol eax, 0xa2
popf
pushf
not eax
add eax, 0x92e82404
xor eax, 0xf0e8cb47
rol eax, 0x78
popf
jmp 0x1403a19d7
mov rax, qword [rsp + 0x50]
movsxd rax, dword [rax + 0xc]
mov rcx, qword [rsp + 0xf0]
mov rcx, qword [rcx + 0x30]
push rax
not rax
sub rcx, rax
pop rax
sub rcx, 1
mov rax, rcx
mov rcx, qword [rsp + 0x50]
mov rdx, qword [rsp + 0xf0]
mov ecx, dword [rcx + 0x10]
imul ecx, dword [rdx + 0x18]
movsxd rcx, ecx
push rcx
not rcx
sub rax, rcx
pop rcx
sub rax, 1
mov rcx, qword [rsp + 0xf0]
mov ecx, dword [rcx + 0x28]
mov dword [rsp + 0x20], ecx
mov rcx, qword [rsp + 0xf0]
mov r9d, dword [rcx + 0x18]
mov rcx, qword [rsp + 0x50]
mov r8d, dword [rcx + 8]
mov rcx, qword [rsp + 0x50]
mov edx, dword [rcx + 4]
mov rcx, rax
call fcn.1402835e1
push rax
pushf
mov eax, 0x7e6c73fb
pushf
not eax
add eax, 0xdf8a8a3b
xor eax, 0xb755bc89
rol eax, 0xcc
popf
pushf
not eax
add eax, 0xeeb408f3
xor eax, 0xcb627962
rol eax, 0x27
popf
pushf
not eax
add eax, 0xc7aa8e3b
xor eax, 0xeec73369
rol eax, 0x36
popf
pushf
not eax
add eax, 0xc673cede
xor eax, 0x91b5bf54
rol eax, 0x94
popf
jmp 0x1403a19d7
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x50]
movzx ecx, word [rcx + 0xc]
mov word [rax], cx
mov rax, qword [rsp + 0x70]
mov rcx, qword [rsp + 0x50]
movzx ecx, word [rcx + 0x10]
mov word [rax + 2], cx
mov rax, qword [rsp + 0x50]
mov eax, dword [rax + 0xc]
mov rcx, qword [rsp + 0x50]
add eax, dword [rcx + 4]
mov rcx, qword [rsp + 0x70]
mov word [rcx + 4], ax
mov rax, qword [rsp + 0x50]
mov eax, dword [rax + 0x10]
mov rcx, qword [rsp + 0x50]
add eax, dword [rcx + 8]
mov rcx, qword [rsp + 0x70]
mov word [rcx + 6], ax
cvtsi2ss xmm0, dword [rsp + 0xac]
movss xmm1, dword [rsp + 0x60]
mulss xmm1, xmm0
movaps xmm0, xmm1
mov rax, qword [rsp + 0x70]
movss dword [rax + 0x10], xmm0
cvtsi2ss xmm0, dword [rsp + 0x90]
mulss xmm0, dword [rsp + 0x94]
addss xmm0, dword [rsp + 0x98]
mov rax, qword [rsp + 0x70]
movss dword [rax + 8], xmm0
cvtsi2ss xmm0, dword [rsp + 0x9c]
mulss xmm0, dword [rsp + 0xa0]
addss xmm0, dword [rsp + 0xa4]
mov rax, qword [rsp + 0x70]
movss dword [rax + 0xc], xmm0
mov rax, qword [rsp + 0x50]
mov eax, dword [rax + 4]
mov ecx, dword [rsp + 0x90]
push rax
not eax
sub ecx, eax
pop rax
sub ecx, 1
mov eax, ecx
cvtsi2ss xmm0, eax
mulss xmm0, dword [rsp + 0x94]
addss xmm0, dword [rsp + 0x98]
mov rax, qword [rsp + 0x70]
movss dword [rax + 0x14], xmm0
mov rax, qword [rsp + 0x50]
mov eax, dword [rax + 8]
mov ecx, dword [rsp + 0x9c]
push rax
not eax
sub ecx, eax
pop rax
sub ecx, 1
mov eax, ecx
cvtsi2ss xmm0, eax
mulss xmm0, dword [rsp + 0xa0]
addss xmm0, dword [rsp + 0xa4]
mov rax, qword [rsp + 0x70]
movss dword [rax + 0x18], xmm0
cmp dword [rsp + 0x68], 0
jne 0x1403a2b14
push rax
pushf
mov eax, 0x28158bc4
pushf
not eax
add eax, 0x8d8eec96
xor eax, 0xfe35bcc4
rol eax, 0xbf
popf
pushf
not eax
add eax, 0xc123b1da
xor eax, 0xf37d43db
rol eax, 0x40
popf
jmp 0x1403a19d7
push rax
pushf
mov eax, 0x872e494f
pushf
not eax
add eax, 0xbc779359
xor eax, 0xaec39598
rol eax, 0x19
popf
pushf
not eax
add eax, 0x9baa6f1d
xor eax, 0x97750545
rol eax, 0xef
popf
pushf
not eax
add eax, 0xd33adcef
xor eax, 0x8795b7a4
rol eax, 0x9e
popf
pushf
not eax
add eax, 0xa8444291
xor eax, 0x8b954ddd
rol eax, 0x86
popf
jmp 0x1403a19d7
mov eax, dword [rsp + 0x5c]
mov dword [rsp + 0x7c], eax
push rax
pushf
mov eax, 0xce42a703
pushf
not eax
add eax, 0x8d311fe1
xor eax, 0xf3000d22
rol eax, 0xc9
popf
pushf
not eax
add eax, 0xd0acf1a0
xor eax, 0xab43421d
rol eax, 0xc3
popf
pushf
not eax
add eax, 0xf80ec88b
xor eax, 0x8c06ce00
rol eax, 0xc0
popf
pushf
not eax
add eax, 0xdfe71c32
xor eax, 0xbfef2a73
rol eax, 0xe3
popf
jmp 0x1403a19d7
jmp 0x1403a30d3
mov rax, qword [rsp + 0xf0]
cmp dword [rax + 0x20], 0
je 0x1403a2c93
push rax
pushf
mov eax, 0x3828e59d
pushf
not eax
add eax, 0xaea90764
xor eax, 0xbb3352d0
rol eax, 0xdc
popf
pushf
not eax
add eax, 0xdbb561f9
xor eax, 0xd60816b8
rol eax, 0x8a
popf
pushf
not eax
add eax, 0xaf3de043
xor eax, 0xa32b8b5d
rol eax, 0x49
popf
pushf
not eax
add eax, 0xcb4eb0cb
xor eax, 0xca7aab45
rol eax, 2
popf
jmp 0x1403a19d7
push rax
pushf
mov eax, 0x756a950d
pushf
not eax
add eax, 0xa87f5cbc
xor eax, 0x97e572b4
rol eax, 0xf1
popf
pushf
not eax
add eax, 0xd524dead
xor eax, 0xd8a7d93e
rol eax, 0xf7
popf
pushf
not eax
add eax, 0xba17e3ef
xor eax, 0xbe3e8fc8
rol eax, 0x37
popf
jmp 0x1403a19d7
mov dword [rsp + 0x84], 0
jmp 0x1403a30d3
mov rax, qword [rsp + 0x50]
cmp dword [rax + 0x14], 0
je 0x1403a2d93
push rax
pushf
mov eax, 0x2618e8d4
pushf
not eax
add eax, 0xfa47cf5c
xor eax, 0xc3cb6a26
rol eax, 0x96
popf
pushf
not eax
add eax, 0xff7f73ef
xor eax, 0xc025813e
rol eax, 0x1a
popf
pushf
not eax
add eax, 0x9e581c5f
xor eax, 0xef40f5e4
rol eax, 0x1e
popf
pushf
not eax
add eax, 0xe0d02033
xor eax, 0xd7214805
rol eax, 0x5d
popf
jmp 0x1403a19d7
push rax
pushf
mov eax, 0xa8c33872
pushf
not eax
add eax, 0xb3618194
xor eax, 0xf621f27e
rol eax, 0xdf
popf
pushf
not eax
add eax, 0xe2bedb75
xor eax, 0xe45e89c5
rol eax, 0x56
popf
jmp 0x1403a19d7
mov rax, qword [rsp + 0x50]
cmp dword [rax + 4], 0
jne 0x1403a2e2a
push rax
pushf
mov eax, 0x2b36e967
pushf
not eax
add eax, 0xe61d21e1
xor eax, 0xf946efba
rol eax, 0x23
popf
pushf
not eax
add eax, 0xea5bc985
xor eax, 0xe148eda9
rol eax, 0xbf
popf
pushf
not eax
add eax, 0xfa7f0cfa
xor eax, 0x966ad550
rol eax, 0xd3
popf
pushf
not eax
add eax, 0xba16ad7f
xor eax, 0xd3cf1cae
rol eax, 2
popf
jmp 0x1403a19d7
push rax
pushf
mov eax, 0x8ebb9275
pushf
not eax
add eax, 0x92f936ea
xor eax, 0xaa8ddc59
rol eax, 0xf5
popf
pushf
not eax
add eax, 0x8aa56a40
xor eax, 0xefcd292d
rol eax, 0x56
popf
pushf
not eax
add eax, 0x961465b9
xor eax, 0xceb99d07
rol eax, 0x61
popf
jmp 0x1403a19d7
mov rax, qword [rsp + 0x50]
cmp dword [rax + 8], 0
jne 0x1403a2ed4
push rax
pushf
mov eax, 0x87defc8c
pushf
not eax
add eax, 0xb9d2d5bd
xor eax, 0xd6a4da10
rol eax, 0xce
popf
pushf
not eax
add eax, 0xc54c912f
xor eax, 0xc229a017
rol eax, 0x28
popf
pushf
not eax
add eax, 0xcb3d737c
xor eax, 0xd4453031
rol eax, 0x76
popf
pushf
not eax
add eax, 0xa17a5afa
xor eax, 0x804eda34
rol eax, 0xb2
popf
jmp 0x1403a19d7
push rax
pushf
mov eax, 0x65fe3f0c
pushf
not eax
add eax, 0x912db18a
xor eax, 0xa55d5e3d
rol eax, 0xba
popf
pushf
not eax
add eax, 0xf9efbb02
xor eax, 0xf7bb7250
rol eax, 0x11
popf
jmp 0x1403a19d7
cmp dword [rsp + 0x7c], 0
jl 0x1403a2f67
push rax
pushf
mov eax, 0x423a2b41
pushf
not eax
add eax, 0x8617b2b2
xor eax, 0xb50c973c
rol eax, 0xc7
popf
pushf
not eax
add eax, 0xec293a04
xor eax, 0xe553d1f7
rol eax, 0x87
popf
pushf
not eax
add eax, 0xc8dc4d5f
xor eax, 0xfbd2f05a
rol eax, 0xc2
popf
pushf
not eax
add eax, 0xcdaec62e
xor eax, 0xc306ce67
rol eax, 0x27
popf
jmp 0x1403a19d7
push rax
pushf
mov eax, 0xc5707ea6
pushf
not eax
add eax, 0x916400b4
xor eax, 0x95ea4d54
rol eax, 0x6f
popf
pushf
not eax
add eax, 0xca36c078
xor eax, 0xa6141bba
rol eax, 0xc3
popf
pushf
not eax
add eax, 0xc7d2d015
xor eax, 0xa2e27997
rol eax, 0xe0
popf
jmp 0x1403a19d7
movsxd rax, dword [rsp + 0x58]
imul rax, rax, 0x28
movsxd rcx, dword [rsp + 0x7c]
imul rcx, rcx, 0x1c
mov rdx, qword [rsp + 0x100]
mov rax, qword [rdx + rax + 0x18]
movsxd rdx, dword [rsp + 0x58]
imul rdx, rdx, 0x28
movsxd r8, dword [rsp + 0x5c]
imul r8, r8, 0x1c
mov r9, qword [rsp + 0x100]
mov rdx, qword [r9 + rdx + 0x18]
lea rdi, [rdx + r8]
lea rsi, [rax + rcx]
mov ecx, 0xe64507dd
pushf
not ecx
add ecx, 0xe9219a5d
xor ecx, 0xeaa5730e
rol ecx, 0x77
popf
pushf
not ecx
add ecx, 0xc37c8fe8
xor ecx, 0xea8852f7
rol ecx, 0x65
popf
rep movsb byte [rdi], byte [rsi]
jmp 0x1403a30d3
mov dword [rsp + 0x84], 0
push rax
pushf
mov eax, 0x2f5a0549
pushf
not eax
add eax, 0xa86d28d9
xor eax, 0x8ef5f3ad
rol eax, 0x58
popf
pushf
not eax
add eax, 0x8739575b
xor eax, 0xb800ea5a
rol eax, 0x78
popf
pushf
not eax
add eax, 0xc32a6304
xor eax, 0xf24e1d69
rol eax, 0x17
popf
jmp 0x1403a19d7
mov eax, dword [rsp + 0x80]
jmp 0x1403a30db
inc eax
mov dword [rsp + 0x80], eax
jmp 0x1403a1fcd
jmp 0x1403a1c78
mov rax, qword [rsp + 0xf0]
mov ecx, dword [rsp + 0xb0]
mov dword [rax + 0x24], ecx
mov rax, qword [rsp + 0xf0]
mov ecx, dword [rsp + 0xb4]
mov dword [rax + 0x28], ecx
mov eax, dword [rsp + 0x84]
add rsp, 0xd8
pop rdi
pop rsi
ret