Function at 0x100031e1
Capabilities:
Contain obfuscated stackstrings
Encode data using xor

Disassembly:
push 0x20
mov eax, 0x1003dc4e
call fcn.1003d77e
mov dword [ebp - 0x14], 1
mov esi, dword [ebp + 8]
mov ecx, esi
push 0x10042857
call fcn.10003d99
xor edx, edx
mov dword [ebp - 4], edx
mov edi, dword [0x10057860]
mov dword [ebp - 0x14], 1
test edi, edi
je 0x100038e7
cmp byte [0x100578dc], dl
je 0x10003262
mov ecx, 0x10b8134
call fcn.1000d24b
mov ebx, eax
test ebx, ebx
je 0x10003260
push 4
push ebx
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x10003260
push 4
add ebx, 0xc88
push ebx
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
xor edx, edx
test eax, eax
jne 0x10003262
mov ax, word [ebx]
mov word [edi + 0x40], ax
jmp 0x10003262
xor edx, edx
movzx eax, word [edi + 0x40]
cmp eax, 0x37
ja 0x100035bc
je 0x100035a0
cmp eax, 0x21
ja 0x10003441
je 0x1000340e
cmp eax, 0x15
ja 0x1000337a
je 0x1000334b
sub eax, 1
je 0x1000332c
sub eax, 1
je 0x1000330d
sub eax, 9
je 0x100032d7
sub eax, 1
jne 0x100038e7
movaps xmm0, xmmword [0x1004d190]
mov ecx, edx
movups xmmword [ebp - 0x28], xmm0
mov byte [ebp - 0x18], dl
mov al, byte [ebp - 0x28]
xor byte [ebp + ecx - 0x27], al
inc ecx
cmp ecx, 0xf
jb 0x100032bf
mov byte [ebp - 0x18], dl
lea eax, [ebp - 0x27]
jmp 0x100038df
mov cl, 0x7a
mov dword [ebp - 0x24], 0x81b317a
mov dword [ebp - 0x20], 0x3f5a090f
mov eax, edx
mov dword [ebp - 0x1c], 0x141b1609
mov word [ebp - 0x18], 0xe
xor byte [ebp + eax - 0x23], cl
inc eax
cmp eax, 0xc
jae 0x10003305
mov cl, byte [ebp - 0x24]
jmp 0x100032f6
lea eax, [ebp - 0x23]
jmp 0x100038dc
movaps xmm0, xmmword [0x1004d5c0]
mov ecx, edx
movups xmmword [ebp - 0x28], xmm0
mov byte [ebp - 0x18], dl
mov al, byte [ebp - 0x28]
xor byte [ebp + ecx - 0x27], al
inc ecx
cmp ecx, 0xf
jb 0x1000331d
jmp 0x100032cc
movaps xmm0, xmmword [str.D_b1__67d_a_70__R]
mov ecx, edx
movups xmmword [ebp - 0x28], xmm0
mov byte [ebp - 0x18], dl
mov al, byte [ebp - 0x28]
xor byte [ebp + ecx - 0x27], al
inc ecx
cmp ecx, 0xf
jb 0x1000333c
jmp 0x100032cc
mov cl, 0x26
mov dword [ebp - 0x20], 0x54496b26
mov dword [ebp - 0x1c], 0x48494247
mov eax, edx
mov byte [ebp - 0x18], dl
xor byte [ebp + eax - 0x1f], cl
inc eax
cmp eax, 7
jae 0x1000336f
mov cl, byte [ebp - 0x20]
jmp 0x10003360
mov byte [ebp - 0x18], dl
lea eax, [ebp - 0x1f]
jmp 0x100038df
sub eax, 0x1e
je 0x100033dc
sub eax, 1
je 0x100033b8
sub eax, 1
jne 0x100038e7
movaps xmm0, xmmword [0x1004ce10]
mov ecx, edx
movups xmmword [ebp - 0x28], xmm0
mov word [ebp - 0x18], 0x1717
mov byte [ebp - 0x16], dl
mov al, byte [ebp - 0x28]
xor byte [ebp + ecx - 0x27], al
inc ecx
cmp ecx, 0x11
jb 0x100033a3
mov byte [ebp - 0x16], dl
jmp 0x100032cf
mov cl, 0xf
mov dword [ebp - 0x20], 0x6922590f
mov dword [ebp - 0x1c], 0x7b7c607d
mov eax, edx
mov byte [ebp - 0x18], dl
xor byte [ebp + eax - 0x1f], cl
inc eax
cmp eax, 7
jae 0x1000336f
mov cl, byte [ebp - 0x20]
jmp 0x100033cd
mov cl, 0x1f
mov dword [ebp - 0x24], 0x737a5b1f
mov dword [ebp - 0x20], 0x5c3f6c70
mov eax, edx
mov dword [ebp - 0x1c], 0x736b6c7e
mov word [ebp - 0x18], 0x7a
xor byte [ebp + eax - 0x23], cl
inc eax
cmp eax, 0xc
jae 0x10003305
mov cl, byte [ebp - 0x24]
jmp 0x100033fb
mov cl, 0x38
mov dword [ebp - 0x24], 0x545d7038
mov dword [ebp - 0x20], 0x5a791854
mov eax, edx
mov dword [ebp - 0x1c], 0x4b4b41
xor byte [ebp + eax - 0x23], cl
inc eax
cmp eax, 0xa
jae 0x10003436
mov cl, byte [ebp - 0x24]
jmp 0x10003427
mov byte [ebp - 0x19], dl
lea eax, [ebp - 0x23]
jmp 0x100038df
sub eax, 0x22
je 0x10003575
sub eax, 1
je 0x10003553
sub eax, 0xd
je 0x10003520
sub eax, 3
je 0x100034ee
sub eax, 1
je 0x100034cc
sub eax, 1
je 0x1000349a
sub eax, 1
jne 0x100038e7
movaps xmm0, xmmword [0x1004ce40]
mov ecx, edx
movups xmmword [ebp - 0x28], xmm0
mov byte [ebp - 0x18], dl
mov al, byte [ebp - 0x28]
xor byte [ebp + ecx - 0x27], al
inc ecx
cmp ecx, 0xf
jb 0x10003488
jmp 0x100032cc
mov cl, 0x46
mov dword [ebp - 0x24], 0x24290146
mov dword [ebp - 0x20], 0x66282f2a
mov eax, edx
mov dword [ebp - 0x1c], 0x28233407
mov word [ebp - 0x18], 0x27
xor byte [ebp + eax - 0x23], cl
inc eax
cmp eax, 0xc
jae 0x10003305
mov cl, byte [ebp - 0x24]
jmp 0x100034b9
movaps xmm0, xmmword [0x1004d810]
mov ecx, edx
movups xmmword [ebp - 0x28], xmm0
mov byte [ebp - 0x18], dl
mov al, byte [ebp - 0x28]
xor byte [ebp + ecx - 0x27], al
inc ecx
cmp ecx, 0xf
jb 0x100034dc
jmp 0x100032cc
mov cl, 0x7a
mov dword [ebp - 0x20], 0x1908357a
mov dword [ebp - 0x1c], 0x1f083b5a
mov eax, edx
mov word [ebp - 0x18], 0x1b14
mov byte [ebp - 0x16], dl
xor byte [ebp + eax - 0x1f], cl
inc eax
cmp eax, 9
jae 0x10003518
mov cl, byte [ebp - 0x20]
jmp 0x10003509
mov byte [ebp - 0x16], dl
jmp 0x10003372
mov cl, 0x3e
mov dword [ebp - 0x24], 0x4a5f7c3e
mov dword [ebp - 0x20], 0x585b524a
mov eax, edx
mov dword [ebp - 0x1c], 0x5a525b57
mov byte [ebp - 0x18], dl
xor byte [ebp + eax - 0x23], cl
inc eax
cmp eax, 0xb
jae 0x1000354b
mov cl, byte [ebp - 0x24]
jmp 0x1000353c
mov byte [ebp - 0x18], dl
jmp 0x10003439
movaps xmm0, xmmword [0x1004c850]
mov ecx, edx
movups xmmword [ebp - 0x28], xmm0
mov al, byte [ebp - 0x28]
xor byte [ebp + ecx - 0x27], al
inc ecx
cmp ecx, 0xe
jb 0x10003560
mov byte [ebp - 0x19], dl
jmp 0x100032cf
mov cl, 0x2d
mov dword [ebp - 0x24], 0x4c5f692d
mov dword [ebp - 0x20], 0xd43424a
mov eax, edx
mov dword [ebp - 0x1c], 0x485b4c6e
mov byte [ebp - 0x18], dl
xor byte [ebp + eax - 0x23], cl
inc eax
cmp eax, 0xb
jae 0x1000354b
mov cl, byte [ebp - 0x24]
jmp 0x10003591
movaps xmm0, xmmword [0x1004c7e0]
mov ecx, edx
movups xmmword [ebp - 0x28], xmm0
mov al, byte [ebp - 0x28]
xor byte [ebp + ecx - 0x27], al
inc ecx
cmp ecx, 0xe
jb 0x100035ad
jmp 0x1000356d
cmp eax, 0x51
ja 0x10003777
je 0x10003748
cmp eax, 0x45
ja 0x100036b6
je 0x10003687
sub eax, 0x3d
je 0x10003655
sub eax, 1
je 0x10003633
sub eax, 1
je 0x10003614
sub eax, 1
jne 0x100038e7
movaps xmm0, xmmword [0x1004cf90]
mov ecx, edx
movups xmmword [ebp - 0x28], xmm0
mov byte [ebp - 0x18], dl
mov al, byte [ebp - 0x28]
xor byte [ebp + ecx - 0x27], al
inc ecx
cmp ecx, 0xf
jb 0x10003602
jmp 0x100032cc
movaps xmm0, xmmword [0x1004c8e0]
mov ecx, edx
movups xmmword [ebp - 0x28], xmm0
mov al, byte [ebp - 0x28]
xor byte [ebp + ecx - 0x27], al
inc ecx
cmp ecx, 0xe
jb 0x10003621
jmp 0x1000356d
movaps xmm0, xmmword [0x1004cb70]
mov ecx, edx
movups xmmword [ebp - 0x28], xmm0
mov byte [ebp - 0x18], dl
mov al, byte [ebp - 0x28]
xor byte [ebp + ecx - 0x27], al
inc ecx
cmp ecx, 0xf
jb 0x10003643
jmp 0x100032cc
mov cl, 0xd
mov dword [ebp - 0x24], 0x7d6c430d
mov dword [ebp - 0x20], 0x2d7e6864
mov eax, edx
mov dword [ebp - 0x1c], 0x6a7f624a
mov word [ebp - 0x18], 0x68
xor byte [ebp + eax - 0x23], cl
inc eax
cmp eax, 0xc
jae 0x10003305
mov cl, byte [ebp - 0x24]
jmp 0x10003674
mov cl, 0x6f
mov dword [ebp - 0x20], 0x13c6f
mov dword [ebp - 0x1c], 0xe384f18
mov eax, edx
mov word [ebp - 0x18], 0x1d
xor byte [ebp + eax - 0x1f], cl
inc eax
cmp eax, 8
jae 0x100036ae
mov cl, byte [ebp - 0x20]
jmp 0x1000369f
lea eax, [ebp - 0x1f]
jmp 0x100038dc
sub eax, 0x47
je 0x10003719
sub eax, 1
je 0x100036f1
sub eax, 1
jne 0x100038e7
movaps xmm0, xmmword [0x1004d690]
mov ecx, edx
movups xmmword [ebp - 0x28], xmm0
mov word [ebp - 0x18], 0x7b
mov al, byte [ebp - 0x28]
xor byte [ebp + ecx - 0x27], al
inc ecx
cmp ecx, 0x10
jb 0x100036dc
lea eax, [ebp - 0x27]
jmp 0x100038dc
mov cl, 0x60
mov dword [ebp - 0x20], 0x4122160
mov dword [ebp - 0x1c], 0xd010512
mov eax, edx
mov byte [ebp - 0x18], dl
xor byte [ebp + eax - 0x1f], cl
inc eax
cmp eax, 7
jae 0x1000336f
mov cl, byte [ebp - 0x20]
jmp 0x10003706
mov cl, 0x1f
mov dword [ebp - 0x24], 0x71704d1f
mov dword [ebp - 0x20], 0x3f746d7e
mov eax, edx
mov dword [ebp - 0x1c], 0x7b717e53
mov byte [ebp - 0x18], dl
xor byte [ebp + eax - 0x23], cl
inc eax
cmp eax, 0xb
jae 0x1000354b
mov cl, byte [ebp - 0x24]
jmp 0x10003735
movaps xmm0, xmmword [0x1004d5a0]
mov ecx, edx
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0x5a337772
mov byte [ebp - 0x18], dl
mov al, byte [ebp - 0x2c]
xor byte [ebp + ecx - 0x2b], al
inc ecx
cmp ecx, 0x13
jb 0x1000375f
mov byte [ebp - 0x18], dl
lea eax, [ebp - 0x2b]
jmp 0x100038df
sub eax, 0x52
je 0x100038b2
sub eax, 1
je 0x10003880
sub eax, 1
je 0x10003857
sub eax, 3
je 0x1000382f
sub eax, 5
je 0x10003806
sub eax, 1
je 0x100037cd
sub eax, 1
jne 0x100038e7
movaps xmm0, xmmword [0x1004c840]
mov ecx, edx
movups xmmword [ebp - 0x28], xmm0
mov al, byte [ebp - 0x28]
xor byte [ebp + ecx - 0x27], al
inc ecx
cmp ecx, 0xe
jb 0x100037bb
jmp 0x1000356d
mov cl, 0x7b
mov dword [ebp - 0x24], 0x1208327b
mov dword [ebp - 0x20], 0x15141417
mov eax, edx
mov dword [ebp - 0x1c], 0x1e093a5b
mov word [ebp - 0x18], 0x1a15
mov byte [ebp - 0x16], dl
xor byte [ebp + eax - 0x23], cl
inc eax
cmp eax, 0xd
jae 0x100037fe
mov cl, byte [ebp - 0x24]
jmp 0x100037ef
mov byte [ebp - 0x16], dl
jmp 0x10003439
mov cl, 0x5f
mov dword [ebp - 0x20], 0x362d0f5f
mov dword [ebp - 0x1c], 0x31302c
mov eax, edx
xor byte [ebp + eax - 0x1f], cl
inc eax
cmp eax, 6
jae 0x10003827
mov cl, byte [ebp - 0x20]
jmp 0x10003818
mov byte [ebp - 0x19], dl
jmp 0x10003372
movaps xmm0, xmmword [0x1004ccf0]
mov ecx, edx
movups xmmword [ebp - 0x28], xmm0
mov word [ebp - 0x18], 0x85c
mov byte [ebp - 0x16], dl
mov al, byte [ebp - 0x28]
xor byte [ebp + ecx - 0x27], al
inc ecx
cmp ecx, 0x11
jb 0x10003845
jmp 0x100033b0
movaps xmm0, xmmword [0x1004d880]
mov ecx, edx
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0x283b0d
mov al, byte [ebp - 0x2c]
xor byte [ebp + ecx - 0x2b], al
inc ecx
cmp ecx, 0x12
jb 0x1000386b
mov byte [ebp - 0x19], dl
jmp 0x1000376f
movaps xmm0, xmmword [0x1004d720]
mov ecx, edx
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0x4d246065
mov word [ebp - 0x18], 0x4d4d
mov byte [ebp - 0x16], dl
mov al, byte [ebp - 0x2c]
xor byte [ebp + ecx - 0x2b], al
inc ecx
cmp ecx, 0x15
jb 0x1000389d
mov byte [ebp - 0x16], dl
jmp 0x1000376f
movaps xmm0, xmmword [0x1004cc30]
mov ecx, edx
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0x325b1f1a
mov word [ebp - 0x18], 0x32
mov al, byte [ebp - 0x2c]
xor byte [ebp + ecx - 0x2b], al
inc ecx
cmp ecx, 0x14
jb 0x100038cc
lea eax, [ebp - 0x2b]
mov byte [ebp - 0x17], dl
push eax
mov ecx, esi
call fcn.10003b49
mov eax, esi
call fcn.1003d75b
ret 4