Function at 0x10009cc0
Capabilities:
Authenticate hmac
Contain obfuscated stackstrings
Encode data using xor

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100285c0
mov eax, dword fs:[0]
push eax
sub esp, 0x110
mov eax, dword [0x1003400c]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
push 0xc0
lea eax, [ebp - 0xd4]
push 0
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea ecx, [ebp - 0xd4]
push 1
call fcn.100225c0
mov dword [ebp - 4], 0
mov cl, 0x5f
mov dword [ebp - 0xe8], 0x3651c5f
xor eax, eax
mov dword [ebp - 0xe4], 0x3b3b3e13
mov dword [ebp - 0xe0], 0x36712d3a
mov word [ebp - 0xdc], 0x3631
mov byte [ebp - 0xda], 0
nop dword [eax + eax]
xor byte [ebp + eax - 0xe7], cl
inc eax
cmp eax, 0xd
jae 0x10009d65
mov cl, byte [ebp - 0xe8]
jmp 0x10009d50
push 0x40
push 2
lea eax, [ebp - 0xe7]
mov byte [ebp - 0xda], 0
push eax
lea ecx, [ebp - 0xd4]
call fcn.100224d0
mov eax, dword [ebp - 0xd4]
mov eax, dword [eax + 4]
test byte [ebp + eax - 0xc8], 6
jne 0x1000a9da
mov cl, 9
mov byte [ebp - 0x116], 0
mov al, 3
mov byte [ebp - 0x118], cl
xor al, cl
mov byte [ebp - 0x116], 0
lea edx, [ebp - 0x117]
mov byte [ebp - 0x117], al
lea ecx, [ebp - 0xc4]
call fcn.10001720
movaps xmm0, xmmword [0x1002fbc0]
xor ecx, ecx
movups xmmword [ebp - 0x114], xmm0
mov dword [ebp - 0xe4], 0x48484848
movaps xmm0, xmmword [0x1002fa40]
movups xmmword [ebp - 0x104], xmm0
mov dword [ebp - 0xe0], 0x48484848
movaps xmm0, xmmword [0x1002fbb0]
movups xmmword [ebp - 0xf4], xmm0
mov dword [ebp - 0xdc], 0x42484848
mov word [ebp - 0xd8], 0x68
nop dword [eax]
mov al, byte [ebp - 0x114]
xor byte [ebp + ecx - 0x113], al
inc ecx
cmp ecx, 0x3c
jb 0x10009e20
lea edx, [ebp - 0x113]
mov byte [ebp - 0xd7], 0
lea ecx, [ebp - 0xc4]
call fcn.10001720
movaps xmm0, xmmword [0x1002fe70]
xor ecx, ecx
movups xmmword [ebp - 0x104], xmm0
mov dword [ebp - 0xe4], 0x6c6c6c6c
movaps xmm0, xmmword [0x1002fe80]
movups xmmword [ebp - 0xf4], xmm0
mov dword [ebp - 0xe0], 0x63636c6c
mov dword [ebp - 0xdc], 0x466c66
nop word [eax + eax]
mov al, byte [ebp - 0x104]
xor byte [ebp + ecx - 0x103], al
inc ecx
cmp ecx, 0x2a
jb 0x10009e90
lea edx, [ebp - 0x103]
mov byte [ebp - 0xd9], 0
lea ecx, [ebp - 0xc4]
call fcn.10001720
movaps xmm0, xmmword [str.Tt]
xor ecx, ecx
movups xmmword [ebp - 0x110], xmm0
mov dword [ebp - 0xe0], 0x7b7b7426
movaps xmm0, xmmword [0x1002ff30]
movups xmmword [ebp - 0x100], xmm0
mov dword [ebp - 0xdc], 0x5e747e
movaps xmm0, xmmword [0x1002faa0]
movups xmmword [ebp - 0xf0], xmm0
nop dword [eax + eax]
mov al, byte [ebp - 0x110]
xor byte [ebp + ecx - 0x10f], al
inc ecx
cmp ecx, 0x36
jb 0x10009f00
lea edx, [ebp - 0x10f]
mov byte [ebp - 0xd9], 0
lea ecx, [ebp - 0xc4]
call fcn.10001720
movaps xmm0, xmmword [str.u_ZZU__]
xor ecx, ecx
movups xmmword [ebp - 0x110], xmm0
mov dword [ebp - 0xe0], 0x5f5a5a55
movaps xmm0, xmmword [0x1002f8f0]
movups xmmword [ebp - 0x100], xmm0
mov word [ebp - 0xdc], 0x7f55
movaps xmm0, xmmword [0x1002fcc0]
movups xmmword [ebp - 0xf0], xmm0
mov byte [ebp - 0xda], 0
mov al, byte [ebp - 0x110]
xor byte [ebp + ecx - 0x10f], al
inc ecx
cmp ecx, 0x35
jb 0x10009f71
lea edx, [ebp - 0x10f]
mov byte [ebp - 0xda], 0
lea ecx, [ebp - 0xc4]
call fcn.10001720
movaps xmm0, xmmword [0x1002f960]
xor ecx, ecx
movups xmmword [ebp - 0x10c], xmm0
mov dword [ebp - 0xdc], 0xd070202
movaps xmm0, xmmword [0x1002fd60]
movups xmmword [ebp - 0xfc], xmm0
mov word [ebp - 0xd8], 0x27
movaps xmm0, xmmword [0x1002f950]
movups xmmword [ebp - 0xec], xmm0
nop dword [eax + eax]
mov al, byte [ebp - 0x10c]
xor byte [ebp + ecx - 0x10b], al
inc ecx
cmp ecx, 0x34
jb 0x10009fe0
lea edx, [ebp - 0x10b]
mov byte [ebp - 0xd7], 0
lea ecx, [ebp - 0xc4]
call fcn.10001720
movaps xmm0, xmmword [str.r__XRX:_a]
xor ecx, ecx
movups xmmword [ebp - 0x10c], xmm0
mov dword [ebp - 0xdc], 0x7852585d
movaps xmm0, xmmword [0x1002f8d0]
movups xmmword [ebp - 0xfc], xmm0
mov byte [ebp - 0xd8], 0
movaps xmm0, xmmword [0x1002fd50]
movups xmmword [ebp - 0xec], xmm0
nop dword [eax + eax]
mov al, byte [ebp - 0x10c]
xor byte [ebp + ecx - 0x10b], al
inc ecx
cmp ecx, 0x33
jb 0x1000a050
lea edx, [ebp - 0x10b]
mov byte [ebp - 0xd8], 0
lea ecx, [ebp - 0xc4]
call fcn.10001720
movaps xmm0, xmmword [0x1002fa30]
xor ecx, ecx
movups xmmword [ebp - 0x10c], xmm0
mov dword [ebp - 0xdc], 0xf252f
movaps xmm0, xmmword [0x1002fec0]
movups xmmword [ebp - 0xfc], xmm0
movaps xmm0, xmmword [0x1002fa60]
movups xmmword [ebp - 0xec], xmm0
mov al, byte [ebp - 0x10c]
xor byte [ebp + ecx - 0x10b], al
inc ecx
cmp ecx, 0x32
jb 0x1000a0b1
lea edx, [ebp - 0x10b]
mov byte [ebp - 0xd9], 0
lea ecx, [ebp - 0xc4]
call fcn.10001720
movaps xmm0, xmmword [0x1002f930]
xor ecx, ecx
movups xmmword [ebp - 0xfc], xmm0
mov dword [ebp - 0xdc], 0x200a0005
movaps xmm0, xmmword [str._n_n_n_n_n_n_n_n_n_n_n_n_n_n_n]
movups xmmword [ebp - 0xec], xmm0
mov byte [ebp - 0xd8], 0
nop dword [eax + eax]
mov al, byte [ebp - 0xfc]
xor byte [ebp + ecx - 0xfb], al
inc ecx
cmp ecx, 0x23
jb 0x1000a110
lea edx, [ebp - 0xfb]
mov byte [ebp - 0xd8], 0
lea ecx, [ebp - 0xc4]
call fcn.10001720
movaps xmm0, xmmword [0x1002fc10]
xor ecx, ecx
movups xmmword [ebp - 0x108], xmm0
mov word [ebp - 0xd8], 0x6e
movaps xmm0, xmmword [0x1002fc00]
movups xmmword [ebp - 0xf8], xmm0
movaps xmm0, xmmword [0x1002fb60]
movups xmmword [ebp - 0xe8], xmm0
mov al, byte [ebp - 0x108]
xor byte [ebp + ecx - 0x107], al
inc ecx
cmp ecx, 0x30
jb 0x1000a170
lea edx, [ebp - 0x107]
mov byte [ebp - 0xd7], 0
lea ecx, [ebp - 0xc4]
call fcn.10001720
mov cl, 0x1b
mov dword [ebp - 0xe8], 0x3434311b
mov dword [ebp - 0xe4], 0x4f555458
xor eax, eax
mov dword [ebp - 0xe0], 0x213b5354
mov word [ebp - 0xdc], 0x113b
mov byte [ebp - 0xda], 0
nop dword [eax]
xor byte [ebp + eax - 0xe7], cl
inc eax
cmp eax, 0xd
jae 0x1000a1e5
mov cl, byte [ebp - 0xe8]
jmp 0x1000a1d0
lea edx, [ebp - 0xe7]
mov byte [ebp - 0xda], 0
lea ecx, [ebp - 0xc4]
call fcn.10001720
mov ch, 0x5c
mov byte [ebp - 0xda], 0
mov cl, 0x73
mov byte [ebp - 0xe0], ch
mov dl, cl
mov byte [ebp - 0xda], 0
xor dl, ch
xor cl, ch
mov al, 0x76
mov byte [ebp - 0xde], cl
mov ah, 0x56
mov byte [ebp - 0xdd], dl
mov bl, 0x7c
lea edx, [ebp - 0xdf]
xor al, ch
xor bl, ch
xor ah, ch
mov byte [ebp - 0xdf], al
lea ecx, [ebp - 0xc4]
mov byte [ebp - 0xdc], bl
mov byte [ebp - 0xdb], ah
call fcn.10001720
movaps xmm0, xmmword [0x1002fe30]
xor ecx, ecx
movups xmmword [ebp - 0xf0], xmm0
mov dword [ebp - 0xe0], 0x4d4d4a74
mov dword [ebp - 0xdc], 0x29035146
mov byte [ebp - 0xd8], 0
mov al, byte [ebp - 0xf0]
xor byte [ebp + ecx - 0xef], al
inc ecx
cmp ecx, 0x17
jb 0x1000a281
lea edx, [ebp - 0xef]
mov byte [ebp - 0xd8], 0
lea ecx, [ebp - 0xc4]
call fcn.10001720
movaps xmm0, xmmword [0x1002f940]
xor ecx, ecx
movups xmmword [ebp - 0xf0], xmm0
mov dword [ebp - 0xe0], 0x3535290a
mov dword [ebp - 0xdc], 0x4c663423
mov byte [ebp - 0xd8], 0
nop word [eax + eax]
mov al, byte [ebp - 0xf0]
xor byte [ebp + ecx - 0xef], al
inc ecx
cmp ecx, 0x17
jb 0x1000a2e0
lea edx, [ebp - 0xef]
mov byte [ebp - 0xd8], 0
lea ecx, [ebp - 0xc4]
call fcn.10001720
mov cl, 0x2e
mov byte [ebp - 0x116], 0
mov al, 0x24
mov byte [ebp - 0x118], cl
xor al, cl
mov byte [ebp - 0x116], 0
lea edx, [ebp - 0x117]
mov byte [ebp - 0x117], al
lea ecx, [ebp - 0xc4]
call fcn.10001720
movaps xmm0, xmmword [0x1002fc90]
xor ecx, ecx
movups xmmword [ebp - 0x108], xmm0
mov dword [ebp - 0xe8], 0x4e474a43
movaps xmm0, xmmword [0x1002fc70]
movups xmmword [ebp - 0xf8], xmm0
mov dword [ebp - 0xe4], 0x64f6206
mov dword [ebp - 0xe0], 0x84f556f
mov word [ebp - 0xdc], 0x2c06
mov byte [ebp - 0xda], 0
nop dword [eax + eax]
mov al, byte [ebp - 0x108]
xor byte [ebp + ecx - 0x107], al
inc ecx
cmp ecx, 0x2d
jb 0x1000a390
lea edx, [ebp - 0x107]
mov byte [ebp - 0xda], 0
lea ecx, [ebp - 0xc4]
call fcn.10001720
movaps xmm0, xmmword [0x1002faf0]
xor ecx, ecx
movups xmmword [ebp - 0x10c], xmm0
mov word [ebp - 0xdc], 0x5973
movaps xmm0, xmmword [0x1002fb00]
movups xmmword [ebp - 0xfc], xmm0
mov byte [ebp - 0xda], 0
movaps xmm0, xmmword [0x1002ffb0]
movups xmmword [ebp - 0xec], xmm0
nop word [eax + eax]
mov al, byte [ebp - 0x10c]
xor byte [ebp + ecx - 0x10b], al
inc ecx
cmp ecx, 0x31
jb 0x1000a400
lea edx, [ebp - 0x10b]
mov byte [ebp - 0xda], 0
lea ecx, [ebp - 0xc4]
call fcn.10001720
mov cl, 0x7d
mov byte [ebp - 0x116], 0
mov al, 0x77
mov byte [ebp - 0x118], cl
xor al, cl
mov byte [ebp - 0x116], 0
lea edx, [ebp - 0x117]
mov byte [ebp - 0x117], al
lea ecx, [ebp - 0xc4]
call fcn.10001720
movaps xmm0, xmmword [0x1002fed0]
xor ecx, ecx
movups xmmword [ebp - 0x104], xmm0
mov dword [ebp - 0xe4], 0x62117970
movaps xmm0, xmmword [0x1002fe00]
movups xmmword [ebp - 0xf4], xmm0
mov dword [ebp - 0xe0], 0x1b787f78
mov dword [ebp - 0xdc], 0x111b1b1b
mov word [ebp - 0xd8], 0x3b
mov al, byte [ebp - 0x104]
xor byte [ebp + ecx - 0x103], al
inc ecx
cmp ecx, 0x2c
jb 0x1000a4a1
lea edx, [ebp - 0x103]
mov byte [ebp - 0xd7], 0
lea ecx, [ebp - 0xc4]
call fcn.10001720
movaps xmm0, xmmword [0x1002fcf0]
xor ecx, ecx
movups xmmword [ebp - 0x104], xmm0
mov dword [ebp - 0xe4], 0x56565656
movaps xmm0, xmmword [0x1002fce0]
movups xmmword [ebp - 0xf4], xmm0
mov dword [ebp - 0xe0], 0x56565656
mov dword [ebp - 0xdc], 0x565c5656
mov word [ebp - 0xd8], 0x7c
mov al, byte [ebp - 0x104]
xor byte [ebp + ecx - 0x103], al
inc ecx
cmp ecx, 0x2c
jb 0x1000a511
lea edx, [ebp - 0x103]
mov byte [ebp - 0xd7], 0
lea ecx, [ebp - 0xc4]
call fcn.10001720
movaps xmm0, xmmword [0x1002f8c0]
xor ecx, ecx
movups xmmword [ebp - 0x104], xmm0
mov dword [ebp - 0xe4], 0
xorps xmm0, xmm0
mov dword [ebp - 0xe0], 0
movups xmmword [ebp - 0xf4], xmm0
mov dword [ebp - 0xdc], 0xa0000
mov word [ebp - 0xd8], 0x2a
nop dword [eax]
mov al, byte [ebp - 0x104]
xor byte [ebp + ecx - 0x103], al
inc ecx
cmp ecx, 0x2c
jb 0x1000a580
lea edx, [ebp - 0x103]
mov byte [ebp - 0xd7], 0
lea ecx, [ebp - 0xc4]
call fcn.10001720
mov byte [ebp - 0xe0], 0xc
mov al, 0x57
xor al, byte [ebp - 0xe0]
mov cl, 0x4f
mov byte [ebp - 0xdf], al
mov dl, 0x44
mov al, byte [ebp - 0xe0]
mov ch, 0x51
mov dh, 0x2c
mov byte [ebp - 0xd7], 0
xor cl, al
mov byte [ebp - 0xd7], 0
xor dl, al
mov byte [ebp - 0xde], cl
xor ch, al
mov byte [ebp - 0xdd], dl
xor dh, al
mov byte [ebp - 0xda], ch
mov ah, 0x5e
mov byte [ebp - 0xd9], dh
mov bl, 0x4d
lea edx, [ebp - 0xdf]
mov bh, 6
lea ecx, [ebp - 0xc4]
xor bl, al
xor ah, al
xor bh, al
mov byte [ebp - 0xdc], bl
mov byte [ebp - 0xdb], ah
mov byte [ebp - 0xd8], bh
call fcn.10001720
movaps xmm0, xmmword [0x1002fe10]
xor ecx, ecx
movups xmmword [ebp - 0xf8], xmm0
mov byte [ebp - 0xd8], 0
movaps xmm0, xmmword [0x1002fc30]
movups xmmword [ebp - 0xe8], xmm0
mov al, byte [ebp - 0xf8]
xor byte [ebp + ecx - 0xf7], al
inc ecx
cmp ecx, 0x1f
jb 0x1000a650
lea edx, [ebp - 0xf7]
mov byte [ebp - 0xd8], 0
lea ecx, [ebp - 0xc4]
call fcn.10001720
mov byte [ebp - 0xe4], 0x2c
mov al, 0x7b
xor al, byte [ebp - 0xe4]
mov cl, 0x45
xor cl, byte [ebp - 0xe4]
mov dh, 0xc
mov byte [ebp - 0xe3], al
mov dl, 0x42
mov byte [ebp - 0x119], dh
mov bl, dl
mov al, byte [ebp - 0x119]
mov ch, 0x5e
mov byte [ebp - 0xe2], cl
mov ah, 0x49
mov cl, byte [ebp - 0xe4]
mov bh, 0x11
xor al, cl
mov byte [ebp - 0x11a], 0x26
xor dl, cl
mov byte [ebp - 0xdb], al
mov al, byte [ebp - 0x11a]
xor dh, cl
xor ch, cl
mov byte [ebp - 0xe1], dl
xor bl, cl
mov byte [ebp - 0xde], ch
xor ah, cl
mov byte [ebp - 0xdd], dh
xor bh, cl
mov byte [ebp - 0xd9], 0
xor al, cl
mov byte [ebp - 0xe0], bl
lea edx, [ebp - 0xe3]
mov byte [ebp - 0xdf], ah
lea ecx, [ebp - 0xc4]
mov byte [ebp - 0xdc], bh
mov byte [ebp - 0xda], al
mov byte [ebp - 0xd9], 0
call fcn.10001720
mov byte [ebp - 0xe4], 0x18
mov cl, 0x77
xor cl, byte [ebp - 0xe4]
mov ch, 0x38
mov al, 0x54
mov byte [ebp - 0x11a], ch
xor al, byte [ebp - 0xe4]
mov dh, ch
mov byte [ebp - 0xe3], al
mov dl, 0x6b
mov al, byte [ebp - 0x11a]
mov bl, 0x7d
mov byte [ebp - 0xe2], cl
mov ah, 0x6a
mov cl, byte [ebp - 0xe4]
mov bh, 0x25
xor al, cl
mov byte [ebp - 0x119], 0x12
xor dl, cl
mov byte [ebp - 0xdb], al
mov al, byte [ebp - 0x119]
xor dh, cl
xor bl, cl
mov byte [ebp - 0xd9], 0
xor ah, cl
mov byte [ebp - 0xe1], dl
xor ch, cl
mov byte [ebp - 0xdd], dh
xor bh, cl
mov byte [ebp - 0xde], ch
xor al, cl
mov byte [ebp - 0xe0], bl
mov byte [ebp - 0xdf], ah
lea edx, [ebp - 0xe3]
mov byte [ebp - 0xdc], bh
lea ecx, [ebp - 0xc4]
mov byte [ebp - 0xda], al
mov byte [ebp - 0xd9], 0
call fcn.10001720
movaps xmm0, xmmword [0x1002fd00]
xor ecx, ecx
movups xmmword [ebp - 0xf8], xmm0
mov byte [ebp - 0xd8], 0
movaps xmm0, xmmword [0x1002ff00]
movups xmmword [ebp - 0xe8], xmm0
nop word [eax + eax]
mov al, byte [ebp - 0xf8]
xor byte [ebp + ecx - 0xf7], al
inc ecx
cmp ecx, 0x1f
jb 0x1000a800
lea edx, [ebp - 0xf7]
mov byte [ebp - 0xd8], 0
lea ecx, [ebp - 0xc4]
call fcn.10001720
movaps xmm0, xmmword [0x1002ff90]
xor ecx, ecx
movups xmmword [ebp - 0x104], xmm0
mov dword [ebp - 0xe4], 0x7c7c7c7c
movaps xmm0, xmmword [0x1002ffa0]
movups xmmword [ebp - 0xf4], xmm0
mov dword [ebp - 0xe0], 0x7c7c7c7c
mov dword [ebp - 0xdc], 0x7c767c7c
mov word [ebp - 0xd8], 0x56
mov al, byte [ebp - 0x104]
xor byte [ebp + ecx - 0x103], al
inc ecx
cmp ecx, 0x2c
jb 0x1000a870
lea edx, [ebp - 0x103]
mov byte [ebp - 0xd7], 0
lea ecx, [ebp - 0xc4]
call fcn.10001720
movaps xmm0, xmmword [0x1002fb10]
xor ecx, ecx
movups xmmword [ebp - 0x104], xmm0
mov dword [ebp - 0xe4], 0x3a3a3a3a
movaps xmm0, xmmword [0x1002fb20]
movups xmmword [ebp - 0xf4], xmm0
mov dword [ebp - 0xe0], 0x3a3a3a3a
mov dword [ebp - 0xdc], 0x303a3a3a
mov word [ebp - 0xd8], 0x1a
mov al, byte [ebp - 0x104]
xor byte [ebp + ecx - 0x103], al
inc ecx
cmp ecx, 0x2c
jb 0x1000a8e0
lea edx, [ebp - 0x103]
mov byte [ebp - 0xd7], 0
lea ecx, [ebp - 0xc4]
call fcn.10001720
mov cl, 0x18
mov dword [ebp - 0xe8], 0x44225b18
mov dword [ebp - 0xe4], 0x7c7c7954
xor eax, eax
mov dword [ebp - 0xe0], 0x71366a7d
mov word [ebp - 0xdc], 0x7176
mov byte [ebp - 0xda], 0
nop dword [eax]
xor byte [ebp + eax - 0xe7], cl
inc eax
cmp eax, 0xd
jae 0x1000a955
mov cl, byte [ebp - 0xe8]
jmp 0x1000a940
push 0x40
push 1
lea eax, [ebp - 0xe7]
mov byte [ebp - 0xda], 0
push eax
lea ecx, [ebp - 0xd4]
call fcn.100224d0
mov eax, dword [ebp - 0xd4]
mov eax, dword [eax + 4]
mov eax, dword [ebp + eax - 0xc8]
test al, 6
jne 0x1000a9da
test al, 1
jne 0x1000a9b1
nop word [eax + eax]
lea edx, [ebp - 0x11]
lea ecx, [ebp - 0xd4]
call fcn.10022840
mov eax, dword [ebp - 0xd4]
mov eax, dword [eax + 4]
test byte [ebp + eax - 0xc8], 1
je 0x1000a990
lea ecx, [ebp - 0xbc]
call fcn.10001560
test eax, eax
jne 0x1000a9da
push eax
mov eax, dword [ebp - 0xd4]
lea ecx, [ebp - 0xd4]
push 2
mov eax, dword [eax + 4]
add ecx, eax
call dword [sym.imp.MSVCP140.dll_public:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::setstate_int__bool_]
lea ecx, [ebp - 0x5c]
call fcn.10022510
lea ecx, [ebp - 0x5c]
call dword [sym.imp.MSVCP140.dll_public_virtual:_void___thiscall_std::basic_ios_char__struct_std::char_traits_char__::destructor_void_]
xor eax, eax
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.100271b9
mov esp, ebp
pop ebp
ret