Function at 0x18002ea30
Capabilities:
Authenticate hmac

Disassembly:
mov qword [rsp + 8], rcx
sub rsp, 0xb8
mov rax, qword [0x1800a3248]
xor rax, rsp
mov qword [rsp + 0xa0], rax
movzx eax, word [0x1800a10a0]
and eax, 0x99e5
mov word [0x1800a10a4], ax
imul eax, dword [0x1800a10a0], 0x2c0da254
mov dword [0x1800a10a0], eax
movzx eax, byte [str._e:]
and eax, 0xd7
mov byte [str._e:], al
mov byte [rsp + 0x28], 0
movzx eax, word [0x1800a10a4]
or eax, 0x28b8
mov word [0x1800a10a4], ax
movzx eax, byte [0x1800a10a4]
imul eax, eax, 0xc7
mov byte [str._e:], al
movzx eax, byte [str._e:]
xor eax, 0xb8
mov byte [str._e:], al
movzx eax, byte [0x1800a10a0]
imul eax, eax, 0xaa
mov byte [str._e:], al
movzx eax, word [0x1800a10a0]
or eax, 0xdbc
mov word [0x1800a10a4], ax
movzx eax, word [0x1800a10a0]
and eax, 0xbaf1
mov word [0x1800a10a4], ax
movzx eax, word [0x1800a10a4]
or eax, 0x2f7411a0
mov dword [0x1800a10a0], eax
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8d, 0x328
mov edx, 8
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapAlloc]
mov qword [rsp + 0x20], rax
cmp qword [rsp + 0x20], 0
jne 0x18002ec02
movzx eax, word [0x1800a10a0]
add eax, 0xaf25
mov word [0x1800a10a4], ax
movzx eax, byte [str._e:]
xor eax, 0x88f3
mov word [0x1800a10a4], ax
movzx eax, byte [0x1800a10a0]
sub eax, 0x28
mov byte [str._e:], al
movzx eax, word [0x1800a10a4]
add eax, 0x6eee4946
mov dword [0x1800a10a0], eax
movzx eax, byte [str._e:]
or eax, 0xff
mov byte [str._e:], al
movzx eax, word [0x1800a10a0]
add eax, 0xac6a
mov word [0x1800a10a4], ax
movzx eax, byte [0x1800a10a0]
sub eax, 0x39
mov byte [str._e:], al
movzx eax, word [0x1800a10a0]
sub eax, 0xef6a
mov word [0x1800a10a4], ax
movzx eax, byte [str._e:]
and eax, 0x4b
mov byte [str._e:], al
movzx eax, byte [str._e:]
xor eax, 0xb972
mov word [0x1800a10a4], ax
movzx eax, word [0x1800a10a4]
or eax, 0x67676778
mov dword [0x1800a10a0], eax
xor eax, eax
jmp 0x180030397
movzx eax, byte [str._e:]
add eax, 0xdf3d
mov word [0x1800a10a4], ax
movzx eax, byte [str._e:]
xor eax, 0x7de4
mov word [0x1800a10a4], ax
movzx eax, byte [str._e:]
imul eax, eax, 0xe6c5
mov word [0x1800a10a4], ax
movzx eax, word [0x1800a10a0]
or eax, 0xb217
mov word [0x1800a10a4], ax
movzx eax, word [0x1800a10a0]
xor eax, 0x3b20
mov word [0x1800a10a4], ax
movzx eax, byte [0x1800a10a0]
or eax, 0x96
mov byte [str._e:], al
mov rax, qword [rsp + 0x20]
mov rcx, qword [rsp + 0xc0]
mov qword [rax + 8], rcx
movzx eax, word [0x1800a10a4]
imul eax, eax, 0x19bb513
mov dword [0x1800a10a0], eax
movzx eax, word [0x1800a10a4]
add eax, 0xca44
mov word [0x1800a10a4], ax
movzx eax, byte [0x1800a10a0]
and eax, 0x65
mov byte [str._e:], al
movzx eax, word [0x1800a10a0]
add eax, 0x6673
mov word [0x1800a10a4], ax
movzx eax, byte [0x1800a10a4]
add eax, 0x24
mov byte [str._e:], al
mov eax, dword [0x1800a10a0]
and eax, 0x8eb5290d
mov dword [0x1800a10a0], eax
movzx eax, byte [0x1800a10a4]
sub eax, 0x60
mov byte [str._e:], al
mov dword [rsp + 0x3c], 0
jmp 0x18002ed13
mov eax, dword [rsp + 0x3c]
inc eax
mov dword [rsp + 0x3c], eax
cmp dword [rsp + 0x3c], 2
jge 0x18002ee24
movzx eax, byte [str._e:]
and eax, 0x2f35
mov word [0x1800a10a4], ax
movzx eax, byte [str._e:]
add eax, 0x53de7410
mov dword [0x1800a10a0], eax
movzx eax, word [0x1800a10a4]
imul eax, eax, 0xd5eee8a6
mov dword [0x1800a10a0], eax
movzx eax, byte [str._e:]
xor eax, 0xa659
mov word [0x1800a10a4], ax
movzx eax, word [0x1800a10a4]
imul eax, eax, 0xec1e
mov word [0x1800a10a4], ax
xor edx, edx
xor ecx, ecx
call fcn.180034be0
movsxd rcx, dword [rsp + 0x3c]
mov rdx, qword [rsp + 0x20]
mov qword [rdx + rcx*8 + 0x318], rax
movsxd rax, dword [rsp + 0x3c]
mov rcx, qword [rsp + 0x20]
cmp qword [rcx + rax*8 + 0x318], 0
jne 0x18002ee1f
movzx eax, byte [str._e:]
add eax, 0x9b90
mov word [0x1800a10a4], ax
movzx eax, byte [str._e:]
sub eax, 5
mov byte [str._e:], al
movzx eax, byte [0x1800a10a4]
sub eax, 0xd7
mov byte [str._e:], al
movzx eax, byte [str._e:]
imul eax, eax, 0x94eaedd7
mov dword [0x1800a10a0], eax
movzx eax, word [0x1800a10a4]
sub eax, 0xb7fe
mov word [0x1800a10a4], ax
movzx eax, byte [0x1800a10a4]
and eax, 0x23
mov byte [str._e:], al
xor eax, eax
jmp 0x180030397
jmp 0x18002ed09
movzx eax, byte [0x1800a10a0]
or eax, 0x42
mov byte [str._e:], al
movzx eax, word [0x1800a10a4]
or eax, 0xec70
mov word [0x1800a10a4], ax
movzx eax, word [0x1800a10a4]
and eax, 0x9805
mov word [0x1800a10a4], ax
movzx eax, word [0x1800a10a4]
and eax, 0xcb86
mov word [0x1800a10a4], ax
movzx eax, word [0x1800a10a0]
or eax, 0x83c9
mov word [0x1800a10a4], ax
movzx eax, byte [0x1800a10a4]
and eax, 0xb1
mov byte [str._e:], al
mov dword [rsp + 0x40], 0
jmp 0x18002eea6
mov eax, dword [rsp + 0x40]
inc eax
mov dword [rsp + 0x40], eax
cmp dword [rsp + 0x40], 7
jge 0x18002f085
movzx eax, byte [str._e:]
imul eax, eax, 0xb653ac18
mov dword [0x1800a10a0], eax
movzx eax, word [0x1800a10a4]
or eax, 0x8219
mov word [0x1800a10a4], ax
movzx eax, word [0x1800a10a4]
sub eax, 0xd670
mov word [0x1800a10a4], ax
imul eax, dword [0x1800a10a0], 0x96e4020e
mov dword [0x1800a10a0], eax
movzx eax, word [0x1800a10a4]
add eax, 0xbddc
mov word [0x1800a10a4], ax
movzx eax, byte [0x1800a10a4]
or eax, 0x45
mov byte [str._e:], al
movzx eax, byte [str._e:]
or eax, 0xa582babc
mov dword [0x1800a10a0], eax
movzx eax, byte [str._e:]
and eax, 0x2adc41ee
mov dword [0x1800a10a0], eax
movzx eax, word [0x1800a10a4]
imul eax, eax, 0x84a9d36c
mov dword [0x1800a10a0], eax
movzx eax, byte [0x1800a10a4]
add eax, 3
mov byte [str._e:], al
movzx eax, byte [str._e:]
sub eax, 0x16
mov byte [str._e:], al
mov ecx, 0xb2
call fcn.180039700
xor r9d, r9d
mov r8d, 0xffff
xor edx, edx
xor ecx, ecx
call rax
movsxd rcx, dword [rsp + 0x40]
mov rdx, qword [rsp + 0x20]
mov qword [rdx + rcx*8 + 0x2e0], rax
movsxd rax, dword [rsp + 0x40]
mov rcx, qword [rsp + 0x20]
cmp qword [rcx + rax*8 + 0x2e0], 0
jne 0x18002f080
movzx eax, byte [0x1800a10a0]
and eax, 0x96
mov byte [str._e:], al
movzx eax, byte [str._e:]
sub eax, 0xd6
mov byte [str._e:], al
mov eax, dword [0x1800a10a0]
sub eax, 0xbe3653c5
mov dword [0x1800a10a0], eax
movzx eax, byte [0x1800a10a4]
or eax, 0x5f
mov byte [str._e:], al
movzx eax, byte [0x1800a10a4]
imul eax, eax, 0xfa
mov byte [str._e:], al
movzx eax, byte [str._e:]
xor eax, 0x38e026a2
mov dword [0x1800a10a0], eax
movzx eax, word [0x1800a10a4]
imul eax, eax, 0x56d216de
mov dword [0x1800a10a0], eax
movzx eax, byte [0x1800a10a4]
sub eax, 0x53
mov byte [str._e:], al
movzx eax, byte [str._e:]
add eax, 0xab
mov byte [str._e:], al
movzx eax, byte [str._e:]
sub eax, 0x79
mov byte [str._e:], al
movzx eax, byte [str._e:]
add eax, 0xe6ba4327
mov dword [0x1800a10a0], eax
xor eax, eax
jmp 0x180030397
jmp 0x18002ee9c
movzx eax, byte [0x1800a10a4]
and eax, 0xb0
mov byte [str._e:], al
movzx eax, byte [str._e:]
xor eax, 0xb9
mov byte [str._e:], al
movzx eax, word [0x1800a10a0]
xor eax, 0x61bb
mov word [0x1800a10a4], ax
movzx eax, word [0x1800a10a4]
or eax, 0x781c
mov word [0x1800a10a4], ax
mov rax, qword [rsp + 0x20]
add rax, 0x150
mov rcx, rax
call fcn.18004a5b0
movzx eax, byte [0x1800a10a4]
xor eax, 0x5c
mov byte [str._e:], al
movzx eax, byte [0x1800a10a4]
imul eax, eax, 0x1f
mov byte [str._e:], al
movzx eax, byte [str._e:]
and eax, 0x77
mov byte [str._e:], al
movzx eax, byte [str._e:]
sub eax, 0x7617e132
mov dword [0x1800a10a0], eax
movzx eax, word [0x1800a10a0]
or eax, 0x8f7d
mov word [0x1800a10a4], ax
movzx eax, byte [str._e:]
add eax, 0xbbbb6620
mov dword [0x1800a10a0], eax
movzx eax, byte [0x1800a10a4]
xor eax, 0x1d
mov byte [str._e:], al
mov rax, qword [rsp + 0x20]
add rax, 0x168
mov rcx, rax
call fcn.18004a5b0
movzx eax, byte [0x1800a10a0]
or eax, 0x49
mov byte [str._e:], al
mov eax, dword [0x1800a10a0]
sub eax, 0xa793a011
mov dword [0x1800a10a0], eax
movzx eax, byte [0x1800a10a4]
or eax, 0x93
mov byte [str._e:], al
movzx eax, byte [str._e:]
imul eax, eax, 0x87a55e44
mov dword [0x1800a10a0], eax
movzx eax, byte [0x1800a10a4]
add eax, 0x58
mov byte [str._e:], al
movzx eax, word [0x1800a10a0]
or eax, 0x2240
mov word [0x1800a10a4], ax
mov eax, dword [0x1800a10a0]
and eax, 0xe1c2609b
mov dword [0x1800a10a0], eax
mov rax, qword [rsp + 0x20]
add rax, 0x198
mov rcx, rax
call fcn.18004a5b0
movzx eax, word [0x1800a10a4]
sub eax, 0xf3ee
mov word [0x1800a10a4], ax
movzx eax, word [0x1800a10a0]
sub eax, 0xde82
mov word [0x1800a10a4], ax
mov eax, dword [0x1800a10a0]
add eax, 0xcdb5049d
mov dword [0x1800a10a0], eax
movzx eax, word [0x1800a10a4]
add eax, 0x53d116b
mov dword [0x1800a10a0], eax
mov rax, qword [rsp + 0x20]
add rax, 0x1b0
mov rcx, rax
call fcn.18004a5b0
movzx eax, byte [str._e:]
sub eax, 0x84
mov byte [str._e:], al
movzx eax, byte [0x1800a10a4]
add eax, 0xa0
mov byte [str._e:], al
movzx eax, byte [0x1800a10a4]
add eax, 0xe8
mov byte [str._e:], al
mov eax, dword [0x1800a10a0]
and eax, 0xaa12267f
mov dword [0x1800a10a0], eax
movzx eax, word [0x1800a10a4]
or eax, 0xfbca6ead
mov dword [0x1800a10a0], eax
movzx eax, word [0x1800a10a4]
add eax, 0x8fc84659
mov dword [0x1800a10a0], eax
movzx eax, word [0x1800a10a0]
sub eax, 0xff02
mov word [0x1800a10a4], ax
movzx eax, word [0x1800a10a4]
xor eax, 0x7ebec8e5
mov dword [0x1800a10a0], eax
mov rax, qword [rsp + 0x20]
add rax, 0x1c8
mov rcx, rax
call fcn.18004a5b0
movzx eax, word [0x1800a10a4]
add eax, 0x4fef
mov word [0x1800a10a4], ax
movzx eax, byte [str._e:]
xor eax, 0xd079cb17
mov dword [0x1800a10a0], eax
movzx eax, byte [str._e:]
xor eax, 0x76b8ac00
mov dword [0x1800a10a0], eax
movzx eax, word [0x1800a10a0]
and eax, 0xafd2
mov word [0x1800a10a4], ax
movzx eax, byte [str._e:]
add eax, 0x376b50a2
mov dword [0x1800a10a0], eax
movzx eax, byte [str._e:]
and eax, 0x3b287ae9
mov dword [0x1800a10a0], eax
movzx eax, word [0x1800a10a4]
and eax, 0x1149
mov word [0x1800a10a4], ax
mov eax, dword [0x1800a10a0]
xor eax, 0xb6fa006f
mov dword [0x1800a10a0], eax
movzx eax, byte [str._e:]
xor eax, 0x73
mov byte [str._e:], al
lea rcx, [rsp + 0x68]
call fcn.180004c30
movzx eax, byte [0x1800a10a4]
and eax, 0x3a
mov byte [str._e:], al
movzx eax, byte [0x1800a10a4]
xor eax, 0xb7
mov byte [str._e:], al
lea rcx, [rsp + 0x68]
call fcn.180004a40
mov dword [rsp + 0x44], eax
cmp dword [rsp + 0x44], 0
jne 0x18002f888
movzx eax, word [0x1800a10a0]
or eax, 0x416d
mov word [0x1800a10a4], ax
mov eax, dword [0x1800a10a0]
and eax, 0x414563de
mov dword [0x1800a10a0], eax
movzx eax, byte [str._e:]
imul eax, eax, 0xc1ca
mov word [0x1800a10a4], ax
movzx eax, byte [0x1800a10a0]
and eax, 0x18
mov byte [str._e:], al
movzx eax, word [0x1800a10a0]
or eax, 0x6e15
mov word [0x1800a10a4], ax
movzx eax, byte [str._e:]
sub eax, 0xd04e
mov word [0x1800a10a4], ax
movzx eax, word [0x1800a10a4]
add eax, 0x6457
mov word [0x1800a10a4], ax
movzx eax, word [0x1800a10a4]
imul eax, eax, 0xe71dd583
mov dword [0x1800a10a0], eax
movzx eax, byte [str._e:]
add eax, 0x1c0c
mov word [0x1800a10a4], ax
movzx eax, byte [0x1800a10a4]
sub eax, 0x7a
mov byte [str._e:], al
movzx eax, word [0x1800a10a4]
xor eax, 0x722e19b2
mov dword [0x1800a10a0], eax
movzx eax, word [0x1800a10a0]
imul eax, eax, 0xcddb
mov word [0x1800a10a4], ax
movzx eax, byte [str._e:]
and eax, 0xec
mov byte [str._e:], al
movzx eax, byte [str._e:]
and eax, 0x380e5588
mov dword [0x1800a10a0], eax
mov rax, qword [rsp + 0x20]
mov r8, rax
mov rdx, qword [rsp + 0x20]
lea rcx, [0x180027950]
call fcn.180004c80
mov dword [rsp + 0x44], eax
cmp dword [rsp + 0x44], 0
jne 0x18002f7c0
movzx eax, word [0x1800a10a4]
imul eax, eax, 0xc91fec3e
mov dword [0x1800a10a0], eax
movzx eax, byte [0x1800a10a0]
imul eax, eax, 0x16
mov byte [str._e:], al
movzx eax, byte [str._e:]
sub eax, 0x45e4274f
mov dword [0x1800a10a0], eax
movzx eax, byte [str._e:]
and eax, 0xa7c96ec9
mov dword [0x1800a10a0], eax
movzx eax, word [0x1800a10a4]
or eax, 0xee1c
mov word [0x1800a10a4], ax
movzx eax, byte [str._e:]
add eax, 0xe531
mov word [0x1800a10a4], ax
mov eax, dword [0x1800a10a0]
and eax, 0xffd0f753
mov dword [0x1800a10a0], eax
movzx eax, word [0x1800a10a4]
imul eax, eax, 0xb4763c5
mov dword [0x1800a10a0], eax
movzx eax, word [0x1800a10a0]
imul eax, eax, 0xede4
mov word [0x1800a10a4], ax
movzx eax, byte [str._e:]
imul eax, eax, 0xe058
mov word [0x1800a10a4], ax
movzx eax, word [0x1800a10a0]
xor eax, 0x2f1c
mov word [0x1800a10a4], ax
mov ecx, 0xb0
call fcn.180039700
lea rcx, [rsp + 0x70]
call rax
movzx eax, byte [0x1800a10a0]
xor eax, 0x6d
mov byte [str._e:], al
movzx eax, byte [0x1800a10a4]
and eax, 0xd2
mov byte [str._e:], al
mov rax, qword [rsp + 0x20]
add rax, 0x1e0
mov r8d, 0x100
xor edx, edx
mov rcx, rax
call fcn.180049e30
movzx eax, byte [0x1800a10a0]
add eax, 0x87
mov byte [str._e:], al
movzx eax, byte [0x1800a10a0]
and eax, 0xb0
mov byte [str._e:], al
movzx eax, word [0x1800a10a0]
add eax, 0x714a
mov word [0x1800a10a4], ax
mov dword [rsp + 0x2c], 0
jmp 0x18002f66d
mov eax, dword [rsp + 0x2c]
inc eax
mov dword [rsp + 0x2c], eax
mov eax, dword [rsp + 0x90]
cmp dword [rsp + 0x2c], eax
jae 0x18002f7b6
cmp dword [rsp + 0x2c], 0x20
jae 0x18002f7b6
movzx eax, byte [str._e:]
xor eax, 0x1ee01c7d
mov dword [0x1800a10a0], eax
movzx eax, byte [str._e:]
xor eax, 0x2985
mov word [0x1800a10a4], ax
movzx eax, byte [0x1800a10a4]
imul eax, eax, 0x72
mov byte [str._e:], al
movzx eax, byte [str._e:]
or eax, 0xe4b6
mov word [0x1800a10a4], ax
movzx eax, byte [str._e:]
imul eax, eax, 0xd9f720cf
mov dword [0x1800a10a0], eax
mov eax, dword [0x1800a10a0]
and eax, 0xd32a0b5d
mov dword [0x1800a10a0], eax
movzx eax, byte [str._e:]
or eax, 0x52d5cf90
mov dword [0x1800a10a0], eax
movzx eax, word [0x1800a10a4]
add eax, 0x51fe6426
mov dword [0x1800a10a0], eax
xor r8d, r8d
mov rdx, qword [rsp + 0x20]
lea rcx, [0x180028be0]
call fcn.180044ad0
mov ecx, dword [rsp + 0x2c]
mov rdx, qword [rsp + 0x20]
mov qword [rdx + rcx*8 + 0x1e0], rax
movzx eax, byte [str._e:]
add eax, 0x4b
mov byte [str._e:], al
movzx eax, byte [str._e:]
or eax, 0xa9eacf8e
mov dword [0x1800a10a0], eax
movzx eax, byte [str._e:]
or eax, 0x5b2b
mov word [0x1800a10a4], ax
movzx eax, word [0x1800a10a0]
xor eax, 0xe11a
mov word [0x1800a10a4], ax
mov eax, dword [rsp + 0x2c]
mov qword [rsp + 0x48], rax
mov ecx, 0xb1
call fcn.180039700
mov edx, dword [rsp + 0x2c]
mov rcx, qword [rsp + 0x20]
mov r8, qword [rsp + 0x48]
mov rcx, qword [rcx + r8*8 + 0x1e0]
call rax
jmp 0x18002f663
mov byte [rsp + 0x28], 1
jmp 0x18002f886
mov eax, dword [0x1800a10a0]
or eax, 0x97f0037c
mov dword [0x1800a10a0], eax
movzx eax, byte [0x1800a10a0]
xor eax, 0x39
mov byte [str._e:], al
movzx eax, word [0x1800a10a0]
imul eax, eax, 0x25e0
mov word [0x1800a10a4], ax
movzx eax, byte [0x1800a10a0]
add eax, 0x68
mov byte [str._e:], al
movzx eax, byte [str._e:]
and eax, 0xe86a
mov word [0x1800a10a4], ax
movzx eax, byte [0x1800a10a0]
add eax, 0xf2
mov byte [str._e:], al
movzx eax, word [0x1800a10a0]
add eax, 0xf4f8
mov word [0x1800a10a4], ax
mov eax, dword [0x1800a10a0]
sub eax, 0x822d4022
mov dword [0x1800a10a0], eax
movzx eax, byte [0x1800a10a4]
add eax, 0x6a
mov byte [str._e:], al
mov eax, dword [0x1800a10a0]
or eax, 0x4394cc6
mov dword [0x1800a10a0], eax
movzx eax, byte [str._e:]
xor eax, 0xb0d43423
mov dword [0x1800a10a0], eax
call fcn.180004b70
jmp 0x18002f8d4
movzx eax, byte [str._e:]
imul eax, eax, 0x5a7b
mov word [0x1800a10a4], ax
movzx eax, word [0x1800a10a4]
and eax, 0xa482
mov word [0x1800a10a4], ax
movzx eax, byte [0x1800a10a4]
xor eax, 0xf7
mov byte [str._e:], al
movzx eax, byte [str._e:]
xor eax, 0x328c
mov word [0x1800a10a4], ax
movzx eax, byte [rsp + 0x28]
test eax, eax
jne 0x18003029b
movzx eax, byte [str._e:]
sub eax, 0x9429
mov word [0x1800a10a4], ax
mov eax, dword [0x1800a10a0]
or eax, 0x8db2758c
mov dword [0x1800a10a0], eax
movzx eax, byte [str._e:]
and eax, 0xf78333eb
mov dword [0x1800a10a0], eax
movzx eax, word [0x1800a10a0]
xor eax, 0xc391
mov word [0x1800a10a4], ax
mov eax, dword [0x1800a10a0]
add eax, 0x2445e643
mov dword [0x1800a10a0], eax
movzx eax, byte [str._e:]
and eax, 0xc11e99c1
mov dword [0x1800a10a0], eax
movzx eax, byte [str._e:]
sub eax, 0x1bd9fbf6
mov dword [0x1800a10a0], eax
movzx eax, word [0x1800a10a0]
or eax, 0x4e48
mov word [0x1800a10a4], ax
movzx eax, word [0x1800a10a4]
or eax, 0xcc64
mov word [0x1800a10a4], ax
movzx eax, byte [str._e:]
or eax, 0xfb49
mov word [0x1800a10a4], ax
mov eax, dword [0x1800a10a0]
sub eax, 0x24c9a9db
mov dword [0x1800a10a0], eax
movzx eax, byte [str._e:]
imul eax, eax, 0x7e
mov byte [str._e:], al
mov dword [rsp + 0x30], 0
jmp 0x18002f9cd
mov eax, dword [rsp + 0x30]
inc eax
mov dword [rsp + 0x30], eax
cmp dword [rsp + 0x30], 2
jge 0x18002fb11
movzx eax, word [0x1800a10a4]
add eax, 0x419d
mov word [0x1800a10a4], ax
movzx eax, byte [0x1800a10a0]
and eax, 0xa4
mov byte [str._e:], al
xor edx, edx
xor ecx, ecx
call fcn.180034be0
movsxd rcx, dword [rsp + 0x30]
mov rdx, qword [rsp + 0x20]
mov qword [rdx + rcx*8 + 0x318], rax
movsxd rax, dword [rsp + 0x30]
mov rcx, qword [rsp + 0x20]
cmp qword [rcx + rax*8 + 0x318], 0
je 0x18002fb0c
movzx eax, word [0x1800a10a4]
imul eax, eax, 0x1be0fc90
mov dword [0x1800a10a0], eax
movzx eax, byte [0x1800a10a0]
imul eax, eax, 0x4a
mov byte [str._e:], al
movzx eax, byte [str._e:]
xor eax, 0x89434f85
mov dword [0x1800a10a0], eax
movzx eax, byte [0x1800a10a4]
add eax, 0xfc
mov byte [str._e:], al
mov eax, dword [0x1800a10a0]
or eax, 0x796338b5
mov dword [0x1800a10a0], eax
movzx eax, byte [0x1800a10a4]
sub eax, 0x4a
mov byte [str._e:], al
movzx eax, byte [str._e:]
xor eax, 0xa8
mov byte [str._e:], al
movzx eax, word [0x1800a10a4]
or eax, 0x785e521a
mov dword [0x1800a10a0], eax
movzx eax, word [0x1800a10a0]
sub eax, 0x4f68
mov word [0x1800a10a4], ax
movzx eax, byte [str._e:]
or eax, 0xb6e366e9
mov dword [0x1800a10a0], eax
movzx eax, byte [str._e:]
add eax, 0xa515
mov word [0x1800a10a4], ax
movsxd rax, dword [rsp + 0x30]
mov rcx, qword [rsp + 0x20]
mov rcx, qword [rcx + rax*8 + 0x318]
call fcn.180034b40
jmp 0x18002f9c3
movzx eax, byte [str._e:]
or eax, 0xcb9383d2
mov dword [0x1800a10a0], eax
movzx eax, byte [str._e:]
or eax, 0x79
mov byte [str._e:], al
movzx eax, word [0x1800a10a4]
sub eax, 0x33420972
mov dword [0x1800a10a0], eax
movzx eax, byte [0x1800a10a0]
and eax, 0x6c
mov byte [str._e:], al
movzx eax, byte [str._e:]
sub eax, 0x7e85c1fe
mov dword [0x1800a10a0], eax
mov dword [rsp + 0x34], 0
jmp 0x18002fb7b
mov eax, dword [rsp + 0x34]
inc eax
mov dword [rsp + 0x34], eax
cmp dword [rsp + 0x34], 7
jge 0x18002fd29
movzx eax, word [0x1800a10a4]
add eax, 0x9173
mov word [0x1800a10a4], ax
movzx eax, word [0x1800a10a0]
imul eax, eax, 0x74f4
mov word [0x1800a10a4], ax
movzx eax, byte [str._e:]
add eax, 0x6654249f
mov dword [0x1800a10a0], eax
movzx eax, byte [str._e:]
sub eax, 0xca4b042d
mov dword [0x1800a10a0], eax
movzx eax, byte [str._e:]
or eax, 0x86
mov byte [str._e:], al
movzx eax, byte [0x1800a10a0]
imul eax, eax, 0xe5
mov byte [str._e:], al
mov eax, dword [0x1800a10a0]
xor eax, 0xffc5732c
mov dword [0x1800a10a0], eax
mov ecx, 0xb2
call fcn.180039700
xor r9d, r9d
mov r8d, 0xffff
xor edx, edx
xor ecx, ecx
call rax
movsxd rcx, dword [rsp + 0x34]
mov rdx, qword [rsp + 0x20]
mov qword [rdx + rcx*8 + 0x2e0], rax
movsxd rax, dword [rsp + 0x34]
mov rcx, qword [rsp + 0x20]
cmp qword [rcx + rax*8 + 0x2e0], 0
je 0x18002fd24
movzx eax, word [0x1800a10a0]
and eax, 0xa331
mov word [0x1800a10a4], ax
imul eax, dword [0x1800a10a0], 0xe2512f5a
mov dword [0x1800a10a0], eax
movzx eax, byte [str._e:]
add eax, 0x281f
mov word [0x1800a10a4], ax
movzx eax, byte [str._e:]
add eax, 0xf386e3c5
mov dword [0x1800a10a0], eax
movzx eax, byte [0x1800a10a4]
xor eax, 3
mov byte [str._e:], al
movzx eax, word [0x1800a10a4]
or eax, 0x6d93083a
mov dword [0x1800a10a0], eax
movzx eax, word [0x1800a10a0]
and eax, 0x364f
mov word [0x1800a10a4], ax
movzx eax, word [0x1800a10a4]
sub eax, 0x9d497593
mov dword [0x1800a10a0], eax
movzx eax, word [0x1800a10a4]
xor eax, 0xa0c8f72b
mov dword [0x1800a10a0], eax
movzx eax, byte [str._e:]
sub eax, 0x5e
mov byte [str._e:], al
movsxd rax, dword [rsp + 0x34]
mov qword [rsp + 0x50], rax
mov ecx, 0x40
call fcn.180039700
mov rcx, qword [rsp + 0x20]
mov rdx, qword [rsp + 0x50]
mov rcx, qword [rcx + rdx*8 + 0x2e0]
call rax
jmp 0x18002fb71
movzx eax, word [0x1800a10a4]
and eax, 0x4a7c
mov word [0x1800a10a4], ax
movzx eax, byte [str._e:]
or eax, 0x2105
mov word [0x1800a10a4], ax
mov rax, qword [rsp + 0x20]
add rax, 0x150
mov rcx, rax
call fcn.18004a470
movzx eax, byte [str._e:]
xor eax, 0x45
mov byte [str._e:], al
movzx eax, byte [str._e:]
or eax, 0x79
mov byte [str._e:], al
mov rax, qword [rsp + 0x20]
add rax, 0x168
mov rcx, rax
call fcn.18004a470
movzx eax, byte [str._e:]
and eax, 0xfa49805b
mov dword [0x1800a10a0], eax
movzx eax, byte [0x1800a10a4]
sub eax, 0xb6
mov byte [str._e:], al
movzx eax, word [0x1800a10a0]
add eax, 0x3715
mov word [0x1800a10a4], ax
movzx eax, word [0x1800a10a4]
and eax, 0x2ff3
mov word [0x1800a10a4], ax
movzx eax, word [0x1800a10a4]
and eax, 0xa27c26ed
mov dword [0x1800a10a0], eax
mov rax, qword [rsp + 0x20]
add rax, 0x198
mov rcx, rax
call fcn.18004a470
movzx eax, byte [str._e:]
add eax, 0x32ea
mov word [0x1800a10a4], ax
movzx eax, byte [str._e:]
imul eax, eax, 0x7b45
mov word [0x1800a10a4], ax
movzx eax, byte [0x1800a10a4]
add eax, 0x65
mov byte [str._e:], al
movzx eax, byte [str._e:]
sub eax, 0x2f
mov byte [str._e:], al
movzx eax, byte [0x1800a10a0]
sub eax, 0xb0
mov byte [str._e:], al
movzx eax, byte [str._e:]
add eax, 0xcf
mov byte [str._e:], al
movzx eax, word [0x1800a10a0]
and eax, 0x7157
mov word [0x1800a10a4], ax
mov rax, qword [rsp + 0x20]
add rax, 0x1b0
mov rcx, rax
call fcn.18004a470
movzx eax, byte [str._e:]
xor eax, 0xce
mov byte [str._e:], al
movzx eax, word [0x1800a10a4]
or eax, 0x981d
mov word [0x1800a10a4], ax
movzx eax, word [0x1800a10a4]
sub eax, 0xd121
mov word [0x1800a10a4], ax
movzx eax, word [0x1800a10a0]
and eax, 0xe8cb
mov word [0x1800a10a4], ax
mov rax, qword [rsp + 0x20]
add rax, 0x1c8
mov rcx, rax
call fcn.18004a470
movzx eax, word [0x1800a10a4]
xor eax, 0x3fa53d50
mov dword [0x1800a10a0], eax
movzx eax, byte [0x1800a10a4]
xor eax, 0x98
mov byte [str._e:], al
movzx eax, word [0x1800a10a4]
imul eax, eax, 0xe375f30b
mov dword [0x1800a10a0], eax
mov eax, dword [0x1800a10a0]
and eax, 0xdf7975f5
mov dword [0x1800a10a0], eax
mov dword [rsp + 0x38], 0
jmp 0x18002ff4f
mov eax, dword [rsp + 0x38]
inc eax
mov dword [rsp + 0x38], eax
cmp dword [rsp + 0x38], 0x20
jae 0x180030158
movzx eax, byte [str._e:]
sub eax, 0x1fd8e82c
mov dword [0x1800a10a0], eax
movzx eax, byte [0x1800a10a4]
sub eax, 0x4f
mov byte [str._e:], al
movzx eax, byte [0x1800a10a0]
imul eax, eax, 0x84
mov byte [str._e:], al
movzx eax, word [0x1800a10a4]
sub eax, 0x4a25
mov word [0x1800a10a4], ax
mov eax, dword [rsp + 0x38]
mov rcx, qword [rsp + 0x20]
cmp qword [rcx + rax*8 + 0x1e0], 0
je 0x180030153
movzx eax, byte [0x1800a10a0]
add eax, 0x41
mov byte [str._e:], al
mov eax, dword [0x1800a10a0]
sub eax, 0xa51fb358
mov dword [0x1800a10a0], eax
movzx eax, word [0x1800a10a0]
xor eax, 0xa49f
mov word [0x1800a10a4], ax
movzx eax, byte [str._e:]
add eax, 0x2dc2ee5
mov dword [0x1800a10a0], eax
movzx eax, byte [str._e:]
and eax, 0x8abf3c71
mov dword [0x1800a10a0], eax
movzx eax, byte [str._e:]
sub eax, 0xed
mov word [0x1800a10a4], ax
movzx eax, byte [str._e:]
imul eax, eax, 0x6ee6
mov word [0x1800a10a4], ax
movzx eax, byte [str._e:]
or eax, 0x77a7
mov word [0x1800a10a4], ax
mov eax, dword [0x1800a10a0]
or eax, 0xe2a41f97
mov dword [0x1800a10a0], eax
movzx eax, byte [0x1800a10a4]
or eax, 0x36
mov byte [str._e:], al
movzx eax, byte [str._e:]
add eax, 0xfb407832
mov dword [0x1800a10a0], eax
mov eax, dword [rsp + 0x38]
mov qword [rsp + 0x58], rax
mov ecx, 0x44
call fcn.180039700
mov edx, 1
mov rcx, qword [rsp + 0x20]
mov r8, qword [rsp + 0x58]
mov rcx, qword [rcx + r8*8 + 0x1e0]
call rax
movzx eax, word [0x1800a10a4]
imul eax, eax, 0x91df
mov word [0x1800a10a4], ax
movzx eax, byte [str._e:]
and eax, 0xd39ca8d8
mov dword [0x1800a10a0], eax
movzx eax, word [0x1800a10a4]
and eax, 0x9d119483
mov dword [0x1800a10a0], eax
movzx eax, byte [str._e:]
add eax, 0xbb
mov byte [str._e:], al
movzx eax, byte [0x1800a10a4]
or eax, 0xfa
mov byte [str._e:], al
movzx eax, word [0x1800a10a0]
and eax, 0x3dc7
mov word [0x1800a10a4], ax
movzx eax, byte [str._e:]
or eax, 0xe4
mov byte [str._e:], al
mov eax, dword [rsp + 0x38]
mov qword [rsp + 0x60], rax
mov ecx, 0x40
call fcn.180039700
mov rcx, qword [rsp + 0x20]
mov rdx, qword [rsp + 0x60]
mov rcx, qword [rcx + rdx*8 + 0x1e0]
call rax
jmp 0x18002ff45
cmp qword [rsp + 0x20], 0
je 0x180030269
movzx eax, word [0x1800a10a0]
or eax, 0xf2fe
mov word [0x1800a10a4], ax
movzx eax, byte [0x1800a10a0]
and eax, 1
mov byte [str._e:], al
movzx eax, word [0x1800a10a4]
imul eax, eax, 0xd26645bd
mov dword [0x1800a10a0], eax
movzx eax, word [0x1800a10a0]
and eax, 0x2b76
mov word [0x1800a10a4], ax
movzx eax, word [0x1800a10a4]
imul eax, eax, 0x8e31
mov word [0x1800a10a4], ax
movzx eax, byte [str._e:]
xor eax, 0x8d
mov byte [str._e:], al
movzx eax, byte [0x1800a10a0]
sub eax, 0x9d
mov byte [str._e:], al
movzx eax, byte [str._e:]
sub eax, 0xbe0b
mov word [0x1800a10a4], ax
movzx eax, word [0x1800a10a4]
and eax, 0xca10
mov word [0x1800a10a4], ax
movzx eax, word [0x1800a10a0]
xor eax, 0x294d
mov word [0x1800a10a4], ax
movzx eax, word [0x1800a10a4]
add eax, 0x5ecc5746
mov dword [0x1800a10a0], eax
movzx eax, byte [0x1800a10a4]
and eax, 0x43
mov byte [str._e:], al
movzx eax, word [0x1800a10a0]
add eax, 0xee4d
mov word [0x1800a10a4], ax
call qword [sym.imp.KERNEL32.dll_GetProcessHeap]
mov r8, qword [rsp + 0x20]
xor edx, edx
mov rcx, rax
call qword [sym.imp.KERNEL32.dll_HeapFree]
movzx eax, word [0x1800a10a4]
imul eax, eax, 0xcda8
mov word [0x1800a10a4], ax
movzx eax, byte [str._e:]
sub eax, 0xa22f2b1
mov dword [0x1800a10a0], eax
xor eax, eax
jmp 0x180030397
movzx eax, byte [0x1800a10a4]
imul eax, eax, 0x90
mov byte [str._e:], al
mov eax, dword [0x1800a10a0]
add eax, 0xd404fe4a
mov dword [0x1800a10a0], eax
mov eax, dword [0x1800a10a0]
xor eax, 0x246e885a
mov dword [0x1800a10a0], eax
movzx eax, byte [0x1800a10a0]
or eax, 0x90
mov byte [str._e:], al
movzx eax, byte [0x1800a10a4]
and eax, 0xe3
mov byte [str._e:], al
movzx eax, byte [str._e:]
add eax, 0xe0
mov byte [str._e:], al
movzx eax, word [0x1800a10a4]
add eax, 0xb71e74ad
mov dword [0x1800a10a0], eax
movzx eax, byte [str._e:]
sub eax, 0x38a66fc6
mov dword [0x1800a10a0], eax
movzx eax, word [0x1800a10a4]
sub eax, 0x49c3
mov word [0x1800a10a4], ax
movzx eax, word [0x1800a10a4]
and eax, 0xb545
mov word [0x1800a10a4], ax
movzx eax, byte [0x1800a10a0]
and eax, 0x84
mov byte [str._e:], al
imul eax, dword [0x1800a10a0], 0x2c6522a2
mov dword [0x1800a10a0], eax
movzx eax, byte [0x1800a10a0]
sub eax, 0x61
mov byte [str._e:], al
movzx eax, byte [0x1800a10a0]
or eax, 0x1e
mov byte [str._e:], al
mov rax, qword [rsp + 0x20]
mov rcx, qword [rsp + 0xa0]
xor rcx, rsp
call fcn.18006a240
add rsp, 0xb8
ret