Function at 0x10010d80
Capabilities:
Authenticate hmac
Contain obfuscated stackstrings
Encode data using xor
Parse pe header

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x34
movaps xmm0, xmmword [0x102129b0]
xor ecx, ecx
push ebx
movups xmmword [ebp - 0x1c], xmm0
mov dword [ebp - 0xc], 0x16100d10
mov word [ebp - 8], 0x17
mov al, byte [ebp - 0x1c]
xor byte [ebp + ecx - 0x1b], al
inc ecx
cmp ecx, 0x14
jb 0x10010da1
lea ecx, [ebp - 0x1b]
mov byte [ebp - 7], 0
call fcn.10010c20
mov ecx, eax
call fcn.10010d10
movaps xmm0, xmmword [0x10214570]
xor ecx, ecx
mov dword [0x1021e078], eax
movups xmmword [ebp - 0x1c], xmm0
mov dword [ebp - 0xc], 0x2f242326
mov byte [ebp - 8], 0
nop
mov al, byte [ebp - 0x1c]
xor byte [ebp + ecx - 0x1b], al
inc ecx
cmp ecx, 0x13
jb 0x10010de0
lea ecx, [ebp - 0x1b]
mov byte [ebp - 8], 0
call fcn.10010c20
mov ecx, eax
call fcn.10010d10
movaps xmm0, xmmword [0x10214de0]
xor ecx, ecx
mov dword [0x1021ce18], eax
movups xmmword [ebp - 0x18], xmm0
mov byte [ebp - 8], 0
mov al, byte [ebp - 0x18]
xor byte [ebp + ecx - 0x17], al
inc ecx
cmp ecx, 0xf
jb 0x10010e16
lea ecx, [ebp - 0x17]
mov byte [ebp - 8], 0
call fcn.10010c20
mov ecx, eax
call fcn.10010d10
movaps xmm0, xmmword [0x10216ff0]
xor ecx, ecx
mov dword [0x1021ce04], eax
movups xmmword [ebp - 0x18], xmm0
mov word [ebp - 8], 0x68
nop
mov al, byte [ebp - 0x18]
xor byte [ebp + ecx - 0x17], al
inc ecx
cmp ecx, 0x10
jb 0x10010e50
lea ecx, [ebp - 0x17]
mov byte [ebp - 7], 0
call fcn.10010c20
mov ecx, eax
call fcn.10010d10
movaps xmm0, xmmword [0x102149d0]
xor ecx, ecx
mov dword [0x1021cd5c], eax
movups xmmword [ebp - 0x18], xmm0
mov byte [ebp - 8], 0
mov al, byte [ebp - 0x18]
xor byte [ebp + ecx - 0x17], al
inc ecx
cmp ecx, 0xf
jb 0x10010e86
lea ecx, [ebp - 0x17]
mov byte [ebp - 8], 0
call fcn.10010c20
mov ecx, eax
call fcn.10010d10
movaps xmm0, xmmword [0x102168c0]
xor ecx, ecx
mov dword [0x1021e070], eax
movups xmmword [ebp - 0x20], xmm0
mov dword [ebp - 0x10], 0x6a6b6d70
mov word [ebp - 0xc], 0x7c7b
mov byte [ebp - 0xa], 0
nop dword [eax]
mov al, byte [ebp - 0x20]
xor byte [ebp + ecx - 0x1f], al
inc ecx
cmp ecx, 0x15
jb 0x10010ed0
lea ecx, [ebp - 0x1f]
mov byte [ebp - 0xa], 0
call fcn.10010c20
mov ecx, eax
call fcn.10010d10
movaps xmm0, xmmword [0x10216800]
xor ecx, ecx
mov dword [0x1021e090], eax
movups xmmword [ebp - 0x20], xmm0
mov dword [ebp - 0x10], 0x6b6a6c71
mov word [ebp - 0xc], 0x7c7a
mov byte [ebp - 0xa], 0
mov al, byte [ebp - 0x20]
xor byte [ebp + ecx - 0x1f], al
inc ecx
cmp ecx, 0x15
jb 0x10010f13
lea ecx, [ebp - 0x1f]
mov byte [ebp - 0xa], 0
call fcn.10010c20
mov ecx, eax
call fcn.10010d10
movaps xmm0, xmmword [0x10212b50]
xor ecx, ecx
mov dword [0x1021e074], eax
movups xmmword [ebp - 0x1c], xmm0
mov dword [ebp - 0xc], 0x1e030208
mov byte [ebp - 8], 0
mov al, byte [ebp - 0x1c]
xor byte [ebp + ecx - 0x1b], al
inc ecx
cmp ecx, 0x13
jb 0x10010f50
lea ecx, [ebp - 0x1b]
mov byte [ebp - 8], 0
call fcn.10010c20
mov ecx, eax
call fcn.10010d10
mov dword [0x1021d04c], eax
cmp eax, dword [0x1021cd3c]
je 0x10010f87
mov dword [0x1021cd3c], eax
mov dword [0x1021bae8], eax
call fcn.100109e0
test eax, eax
mov byte [ebp - 0x14], 0x1e
mov al, 0x58
mov byte [ebp - 0xa], 0
setne byte [0x1021ceac]
mov byte [ebp - 0xa], 0
xor al, byte [ebp - 0x14]
mov bl, 0x5b
mov byte [ebp - 0x13], al
mov cl, 0x4e
mov al, byte [ebp - 0x14]
mov dl, 0x4d
xor cl, al
mov byte [ebp - 1], bl
mov ah, 0x50
mov byte [ebp - 0x12], cl
mov ch, 0x5f
mov dh, 0x5c
xor ch, al
xor dl, al
xor bl, al
mov byte [ebp - 0xe], ch
xor ah, al
mov byte [ebp - 0x11], dl
xor dh, al
mov byte [ebp - 0x10], bl
mov bh, 0x52
mov byte [ebp - 0xf], ah
xor bh, al
mov byte [ebp - 0xd], dh
mov al, byte [ebp - 1]
lea ecx, [ebp - 0x13]
xor al, byte [ebp - 0x14]
mov byte [ebp - 0xc], bh
mov byte [ebp - 0xb], al
call fcn.10010aa0
mov ecx, eax
call fcn.10010b70
mov dword [0x1021d044], eax
mov cl, 0x4f
mov byte [ebp - 0x14], 0xa
mov al, 0x58
xor al, byte [ebp - 0x14]
mov bl, 0x45
xor cl, byte [ebp - 0x14]
mov ch, 0x5f
mov byte [ebp - 0x13], al
mov dl, 0x59
mov byte [ebp - 0x12], cl
mov ah, 0x46
mov cl, byte [ebp - 0x14]
mov dh, 0x5e
mov byte [ebp - 1], bl
xor ch, cl
mov al, byte [ebp - 1]
mov bh, 0x43
xor al, cl
mov byte [ebp - 2], 0x44
mov byte [ebp - 0xb], al
xor dl, cl
mov al, byte [ebp - 2]
xor bl, cl
xor ah, cl
mov byte [ebp - 0xe], ch
xor dh, cl
mov byte [ebp - 9], 0
xor bh, cl
mov byte [ebp - 0x11], dl
xor al, cl
mov byte [ebp - 0x10], bl
lea ecx, [ebp - 0x13]
mov byte [ebp - 0xf], ah
mov byte [ebp - 0xd], dh
mov byte [ebp - 0xc], bh
mov byte [ebp - 0xa], al
mov byte [ebp - 9], 0
call fcn.10010aa0
mov ecx, eax
call fcn.10010b70
mov dword [0x1021d068], eax
mov ch, 0x46
mov byte [ebp - 0xa], 0
mov cl, 0x14
mov byte [ebp - 0x10], ch
mov bl, 0x15
mov byte [ebp - 0xa], 0
mov ah, bl
xor cl, ch
mov al, 5
mov byte [ebp - 0xe], cl
mov dl, 9
xor al, ch
xor dl, ch
mov byte [ebp - 0xf], al
xor bl, ch
mov byte [ebp - 0xd], dl
xor ah, ch
mov byte [ebp - 0xc], bl
lea ecx, [ebp - 0xf]
mov byte [ebp - 0xb], ah
call fcn.10010aa0
mov ecx, eax
call fcn.10010b70
mov dh, 9
mov dword [0x1021ce1c], eax
mov cl, 0x4a
mov byte [ebp - 9], 0
mov bl, 0x4c
mov byte [ebp - 0x10], dh
mov ch, 0x47
mov byte [ebp - 9], 0
mov ah, bl
xor cl, dh
xor ch, dh
mov byte [ebp - 0xe], cl
mov al, 0x5a
mov byte [ebp - 0xa], ch
mov dl, 0x5b
lea ecx, [ebp - 0xf]
xor al, dh
xor dl, dh
xor bl, dh
mov byte [ebp - 0xf], al
xor ah, dh
mov byte [ebp - 0xd], dl
mov byte [ebp - 0xc], bl
mov byte [ebp - 0xb], ah
call fcn.10010aa0
mov ecx, eax
call fcn.10010b70
mov bh, 0x72
mov dword [0x1021e0c0], eax
mov cl, 0x20
mov byte [ebp - 8], 0
mov ch, 0x3b
mov byte [ebp - 0x10], bh
xor cl, bh
mov byte [ebp - 8], 0
xor ch, bh
mov byte [ebp - 0xe], cl
mov al, 0x35
mov byte [ebp - 0xa], ch
mov dl, 0x33
lea ecx, [ebp - 0xf]
mov ah, 0x3a
mov dh, 0x31
mov bl, 0x22
xor al, bh
xor dl, bh
mov byte [ebp - 0xf], al
xor ah, bh
mov byte [ebp - 0xd], dl
xor dh, bh
mov byte [ebp - 0xb], ah
xor bl, bh
mov byte [ebp - 9], dh
mov byte [ebp - 0xc], bl
call fcn.10010aa0
mov ecx, eax
call fcn.10010b70
mov dword [0x1021cd7c], eax
mov byte [ebp - 0x14], 0x4f
mov al, 6
xor al, byte [ebp - 0x14]
mov bl, 0xa
mov byte [ebp - 0x13], al
mov cl, 1
mov al, byte [ebp - 0x14]
mov dl, 0x1b
xor cl, al
mov byte [ebp - 2], bl
mov ah, 0x1d
mov byte [ebp - 0x12], cl
mov ch, 9
mov byte [ebp - 0xa], 0
xor ch, al
mov byte [ebp - 0xa], 0
mov dh, 0xe
mov byte [ebp - 0xe], ch
xor dl, al
lea ecx, [ebp - 0x13]
xor bl, al
mov byte [ebp - 0x11], dl
xor ah, al
mov byte [ebp - 0x10], bl
xor dh, al
mov byte [ebp - 0xf], ah
mov bh, 0xc
mov byte [ebp - 0xd], dh
xor bh, al
mov al, byte [ebp - 2]
xor al, byte [ebp - 0x14]
mov byte [ebp - 0xc], bh
mov byte [ebp - 0xb], al
call fcn.10010aa0
mov ecx, eax
call fcn.10010b70
mov dword [0x1021cd24], eax
mov cl, 0x2e
mov byte [ebp - 0x14], 0x61
mov al, 0x2d
xor al, byte [ebp - 0x14]
mov dl, 0x20
xor cl, byte [ebp - 0x14]
mov ch, 0x2f
mov byte [ebp - 0x13], al
mov ah, 0x28
mov byte [ebp - 2], dl
mov dh, 0x26
mov al, byte [ebp - 2]
mov bl, 0x25
mov byte [ebp - 0x12], cl
mov bh, 0x2c
mov cl, byte [ebp - 0x14]
xor al, cl
mov byte [ebp - 1], 0x31
mov byte [ebp - 0xb], al
xor ch, cl
mov al, byte [ebp - 1]
xor dl, cl
xor bl, cl
mov byte [ebp - 0xe], ch
xor ah, cl
mov byte [ebp - 9], 0
xor dh, cl
mov byte [ebp - 0x11], dl
xor bh, cl
mov byte [ebp - 0x10], bl
xor al, cl
mov byte [ebp - 0xf], ah
lea ecx, [ebp - 0x13]
mov byte [ebp - 0xd], dh
mov byte [ebp - 0xc], bh
mov byte [ebp - 0xa], al
mov byte [ebp - 9], 0
call fcn.10010aa0
mov ecx, eax
call fcn.10010b70
movaps xmm0, xmmword [0x10212300]
xor ecx, ecx
mov dword [0x1021e0a0], eax
movups xmmword [ebp - 0x18], xmm0
nop dword [eax + eax]
mov al, byte [ebp - 0x18]
xor byte [ebp + ecx - 0x17], al
inc ecx
cmp ecx, 0xe
jb 0x10011240
lea ecx, [ebp - 0x17]
mov byte [ebp - 9], 0
call fcn.10010aa0
mov ecx, eax
call fcn.10010b70
mov dword [0x1021ce28], eax
mov ch, 0x64
mov byte [ebp - 0x14], 0x30
mov al, 0x78
xor al, byte [ebp - 0x14]
mov ah, 0x63
mov byte [ebp - 0x13], al
mov bh, ch
mov al, byte [ebp - 0x14]
mov cl, 0x65
xor cl, al
mov byte [ebp - 2], ah
xor ch, al
mov byte [ebp - 0x12], cl
mov dl, 0x74
mov byte [ebp - 0xe], ch
mov dh, 0x71
mov byte [ebp - 0xa], 0
xor dl, al
mov byte [ebp - 0xa], 0
xor ah, al
mov byte [ebp - 0x11], dl
xor dh, al
mov byte [ebp - 0xf], ah
xor bh, al
mov byte [ebp - 0xd], dh
mov bl, 0x6f
mov byte [ebp - 0xc], bh
xor bl, al
lea ecx, [ebp - 0x13]
mov al, byte [ebp - 2]
xor al, byte [ebp - 0x14]
mov byte [ebp - 0x10], bl
mov byte [ebp - 0xb], al
call fcn.10010aa0
mov ecx, eax
call fcn.10010b70
test eax, eax
mov dword [ebp - 0x14], 0x2b3a276f
mov cl, 0x6f
mov dword [ebp - 0x10], 0x2e233f30
setne byte [0x1021ce0b]
mov dword [ebp - 0xc], 0x3c3d2a36
mov byte [ebp - 8], 0
xor eax, eax
nop
xor byte [ebp + eax - 0x13], cl
inc eax
cmp eax, 0xb
jae 0x100112ff
mov cl, byte [ebp - 0x14]
jmp 0x100112f0
lea ecx, [ebp - 0x13]
mov byte [ebp - 8], 0
call fcn.10010aa0
mov ecx, eax
call fcn.10010b70
test eax, eax
mov byte [ebp - 0x10], 0x7b
mov al, 0x3c
mov byte [ebp - 7], 0
setne byte [0x1021ceab]
mov byte [ebp - 7], 0
xor al, byte [ebp - 0x10]
mov cl, 0x37
mov byte [ebp - 0xf], al
mov ch, 0x3e
mov al, byte [ebp - 0x10]
mov dl, 0x34
xor cl, al
xor ch, al
mov ah, 0x2f
mov byte [ebp - 0xe], cl
mov dh, 0x3a
mov byte [ebp - 0xa], ch
mov bl, 0x2c
lea ecx, [ebp - 0xf]
mov bh, 0x36
xor dl, al
xor bl, al
mov byte [ebp - 0xd], dl
xor ah, al
mov byte [ebp - 0xc], bl
xor dh, al
mov byte [ebp - 0xb], ah
xor bh, al
mov byte [ebp - 9], dh
mov byte [ebp - 8], bh
call fcn.10010aa0
mov ecx, eax
call fcn.10010b70
test eax, eax
mov dword [ebp - 0x14], 0x706d6022
mov cl, 0x22
mov dword [ebp - 0x10], 0x7d706766
setne byte [0x1021cea7]
mov dword [ebp - 0xc], 0x7171676e
mov byte [ebp - 8], 0
xor eax, eax
xor byte [ebp + eax - 0x13], cl
inc eax
cmp eax, 0xb
jae 0x100113a7
mov cl, byte [ebp - 0x14]
jmp 0x10011398
lea ecx, [ebp - 0x13]
mov byte [ebp - 8], 0
call fcn.10010aa0
mov ecx, eax
call fcn.10010b70
test eax, eax
mov dword [ebp - 0x14], 0x362c2165
mov cl, 0x65
mov dword [ebp - 0x10], 0x3c242935
setne byte [0x1021cd22]
mov dword [ebp - 0xc], 0x3635233a
mov byte [ebp - 8], 0
xor eax, eax
xor byte [ebp + eax - 0x13], cl
inc eax
cmp eax, 0xb
jae 0x100113ef
mov cl, byte [ebp - 0x14]
jmp 0x100113e0
lea ecx, [ebp - 0x13]
mov byte [ebp - 8], 0
call fcn.10010aa0
mov ecx, eax
call fcn.10010b70
mov dword [0x1021cd48], eax
mov cl, 0x5b
mov dword [ebp - 0x14], 0x8121f5b
xor eax, eax
mov dword [ebp - 0x10], 0x21a170b
mov dword [ebp - 0xc], 0x161a0904
mov byte [ebp - 8], 0
xor byte [ebp + eax - 0x13], cl
inc eax
cmp eax, 0xb
jae 0x10011433
mov cl, byte [ebp - 0x14]
jmp 0x10011424
lea ecx, [ebp - 0x13]
mov byte [ebp - 8], 0
call fcn.10010aa0
mov ecx, eax
call fcn.10010b70
mov dword [0x1021ce88], eax
mov cl, 0x34
mov dword [ebp - 0x14], 0x677d7034
xor eax, eax
mov dword [ebp - 0x10], 0x6d757864
mov dword [ebp - 0xc], 0x6164776b
mov byte [ebp - 8], 0
xor byte [ebp + eax - 0x13], cl
inc eax
cmp eax, 0xb
jae 0x10011477
mov cl, byte [ebp - 0x14]
jmp 0x10011468
lea ecx, [ebp - 0x13]
mov byte [ebp - 8], 0
call fcn.10010aa0
mov ecx, eax
call fcn.10010b70
mov dword [0x1021e060], eax
mov cl, 0x14
mov dword [ebp - 0x14], 0x475d5014
xor eax, eax
mov dword [ebp - 0x10], 0x4d555844
mov dword [ebp - 0xc], 0x5a5d444b
mov word [ebp - 8], 0x53
nop
xor byte [ebp + eax - 0x13], cl
inc eax
cmp eax, 0xc
jae 0x100114bf
mov cl, byte [ebp - 0x14]
jmp 0x100114b0
lea ecx, [ebp - 0x13]
mov byte [ebp - 7], 0
call fcn.10010aa0
mov ecx, eax
call fcn.10010b70
cmp byte [0x1021cdad], 1
mov dword [0x1021e094], eax
jne 0x100115d5
call fcn.10010450
cmp byte [0x1021cdac], 0
jne 0x10011542
movaps xmm0, xmmword [0x102164e0]
xor ecx, ecx
movups xmmword [ebp - 0x30], xmm0
mov byte [0x1021cdac], 1
movaps xmm0, xmmword [0x10212930]
movups xmmword [ebp - 0x20], xmm0
mov dword [ebp - 0x10], 0x2070209
mov dword [ebp - 0xc], 0x40f0a1f
mov word [ebp - 8], 0x6a
mov al, byte [ebp - 0x30]
xor byte [ebp + ecx - 0x2f], al
inc ecx
cmp ecx, 0x28
jb 0x10011525
lea eax, [ebp - 0x2f]
mov byte [ebp - 7], 0
push eax
call fcn.1000f220
add esp, 4
mov dword [0x1021ce18], 0xa
mov dword [0x1021ce04], 1
mov dword [0x1021cd5c], 0xfffffffc
mov dword [0x1021e070], 1
mov dword [0x1021ce1c], 1
mov dword [0x1021cd7c], 1
mov dword [0x1021d044], 1
mov dword [0x1021ce28], 1
mov dword [0x1021cd24], 1
mov dword [0x1021e0a0], 1
mov dword [0x1021cd48], 1
mov dword [0x1021ce88], 1
mov dword [0x1021e060], 1
mov dword [0x1021e094], 1
mov byte [0x1021ce0b], 1
pop ebx
mov esp, ebp
pop ebp
ret