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

Disassembly:
push 0x20
mov eax, 0x1003d86e
call fcn.1003d39e
mov dword [ebp - 0x14], 1
mov esi, dword [ebp + 8]
mov ecx, esi
push 0x10041857
call fcn.10003da0
xor edx, edx
mov dword [ebp - 4], edx
mov edi, dword [0x10056840]
mov dword [ebp - 0x14], 1
test edi, edi
je 0x100038e5
cmp byte [0x100568bc], dl
je 0x10003260
mov ecx, 0x10b8134
call fcn.1000d217
mov ebx, eax
test ebx, ebx
je 0x1000325e
push 4
push ebx
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1000325e
push 4
add ebx, 0xc88
push ebx
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
xor edx, edx
test eax, eax
jne 0x10003260
mov ax, word [ebx]
mov word [edi + 0x40], ax
jmp 0x10003260
xor edx, edx
movzx eax, word [edi + 0x40]
cmp eax, 0x37
ja 0x100035ba
je 0x1000359e
cmp eax, 0x21
ja 0x1000343f
je 0x1000340c
cmp eax, 0x15
ja 0x10003378
je 0x10003349
sub eax, 1
je 0x1000332a
sub eax, 1
je 0x1000330b
sub eax, 9
je 0x100032d5
sub eax, 1
jne 0x100038e5
movaps xmm0, xmmword [0x1004c700]
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 0x100032bd
mov byte [ebp - 0x18], dl
lea eax, [ebp - 0x27]
jmp 0x100038dd
mov cl, 0x13
mov dword [ebp - 0x24], 0x61725813
mov dword [ebp - 0x20], 0x56336066
mov eax, edx
mov dword [ebp - 0x1c], 0x7d727f60
mov word [ebp - 0x18], 0x67
xor byte [ebp + eax - 0x23], cl
inc eax
cmp eax, 0xc
jae 0x10003303
mov cl, byte [ebp - 0x24]
jmp 0x100032f4
lea eax, [ebp - 0x23]
jmp 0x100038da
movaps xmm0, xmmword [0x1004c3c0]
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 0x1000331b
jmp 0x100032ca
movaps xmm0, xmmword [0x1004bf00]
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 0x1000333a
jmp 0x100032ca
mov cl, 0x71
mov dword [ebp - 0x20], 0x31e3c71
mov dword [ebp - 0x1c], 0x1f1e1510
mov eax, edx
mov byte [ebp - 0x18], dl
xor byte [ebp + eax - 0x1f], cl
inc eax
cmp eax, 7
jae 0x1000336d
mov cl, byte [ebp - 0x20]
jmp 0x1000335e
mov byte [ebp - 0x18], dl
lea eax, [ebp - 0x1f]
jmp 0x100038dd
sub eax, 0x1e
je 0x100033da
sub eax, 1
je 0x100033b6
sub eax, 1
jne 0x100038e5
movaps xmm0, xmmword [0x1004c6a0]
mov ecx, edx
movups xmmword [ebp - 0x28], xmm0
mov word [ebp - 0x18], 0x6969
mov byte [ebp - 0x16], dl
mov al, byte [ebp - 0x28]
xor byte [ebp + ecx - 0x27], al
inc ecx
cmp ecx, 0x11
jb 0x100033a1
mov byte [ebp - 0x16], dl
jmp 0x100032cd
mov cl, 0x76
mov dword [ebp - 0x20], 0x105b2076
mov dword [ebp - 0x1c], 0x2051904
mov eax, edx
mov byte [ebp - 0x18], dl
xor byte [ebp + eax - 0x1f], cl
inc eax
cmp eax, 7
jae 0x1000336d
mov cl, byte [ebp - 0x20]
jmp 0x100033cb
mov cl, 0x6e
mov dword [ebp - 0x24], 0x20b2a6e
mov dword [ebp - 0x20], 0x2d4e1d01
mov eax, edx
mov dword [ebp - 0x1c], 0x21a1d0f
mov word [ebp - 0x18], 0xb
xor byte [ebp + eax - 0x23], cl
inc eax
cmp eax, 0xc
jae 0x10003303
mov cl, byte [ebp - 0x24]
jmp 0x100033f9
mov cl, 0x4a
mov dword [ebp - 0x24], 0x262f024a
mov dword [ebp - 0x20], 0x280b6a26
mov eax, edx
mov dword [ebp - 0x1c], 0x393933
xor byte [ebp + eax - 0x23], cl
inc eax
cmp eax, 0xa
jae 0x10003434
mov cl, byte [ebp - 0x24]
jmp 0x10003425
mov byte [ebp - 0x19], dl
lea eax, [ebp - 0x23]
jmp 0x100038dd
sub eax, 0x22
je 0x10003573
sub eax, 1
je 0x10003551
sub eax, 0xd
je 0x1000351e
sub eax, 3
je 0x100034ec
sub eax, 1
je 0x100034ca
sub eax, 1
je 0x10003498
sub eax, 1
jne 0x100038e5
movaps xmm0, xmmword [0x1004bfb0]
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 0x10003486
jmp 0x100032ca
mov cl, 0x5b
mov dword [ebp - 0x24], 0x39341c5b
mov dword [ebp - 0x20], 0x7b353237
mov eax, edx
mov dword [ebp - 0x1c], 0x353e291a
mov word [ebp - 0x18], 0x3a
xor byte [ebp + eax - 0x23], cl
inc eax
cmp eax, 0xc
jae 0x10003303
mov cl, byte [ebp - 0x24]
jmp 0x100034b7
movaps xmm0, xmmword [0x1004b800]
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 0x100034da
jmp 0x100032ca
mov cl, 0x1f
mov dword [ebp - 0x20], 0x7c6d501f
mov dword [ebp - 0x1c], 0x7a6d5e3f
mov eax, edx
mov word [ebp - 0x18], 0x7e71
mov byte [ebp - 0x16], dl
xor byte [ebp + eax - 0x1f], cl
inc eax
cmp eax, 9
jae 0x10003516
mov cl, byte [ebp - 0x20]
jmp 0x10003507
mov byte [ebp - 0x16], dl
jmp 0x10003370
mov cl, 0x4d
mov dword [ebp - 0x24], 0x392c0f4d
mov dword [ebp - 0x20], 0x2b282139
mov eax, edx
mov dword [ebp - 0x1c], 0x29212824
mov byte [ebp - 0x18], dl
xor byte [ebp + eax - 0x23], cl
inc eax
cmp eax, 0xb
jae 0x10003549
mov cl, byte [ebp - 0x24]
jmp 0x1000353a
mov byte [ebp - 0x18], dl
jmp 0x10003437
movaps xmm0, xmmword [str._tMlefz_Khzldlg]
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 0x1000355e
mov byte [ebp - 0x19], dl
jmp 0x100032cd
mov cl, 0x4b
mov dword [ebp - 0x24], 0x2a390f4b
mov dword [ebp - 0x20], 0x6b25242c
mov eax, edx
mov dword [ebp - 0x1c], 0x2e3d2a08
mov byte [ebp - 0x18], dl
xor byte [ebp + eax - 0x23], cl
inc eax
cmp eax, 0xb
jae 0x10003549
mov cl, byte [ebp - 0x24]
jmp 0x1000358f
movaps xmm0, xmmword [0x1004b920]
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 0x100035ab
jmp 0x1000356b
cmp eax, 0x51
ja 0x10003775
je 0x10003746
cmp eax, 0x45
ja 0x100036b4
je 0x10003685
sub eax, 0x3d
je 0x10003653
sub eax, 1
je 0x10003631
sub eax, 1
je 0x10003612
sub eax, 1
jne 0x100038e5
movaps xmm0, xmmword [0x1004bb50]
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 0x10003600
jmp 0x100032ca
movaps xmm0, xmmword [0x1004b850]
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 0x1000361f
jmp 0x1000356b
movaps xmm0, xmmword [0x1004c300]
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 0x10003641
jmp 0x100032ca
mov cl, 0x34
mov dword [ebp - 0x24], 0x44557a34
mov dword [ebp - 0x20], 0x1447515d
mov eax, edx
mov dword [ebp - 0x1c], 0x53465b73
mov word [ebp - 0x18], 0x51
xor byte [ebp + eax - 0x23], cl
inc eax
cmp eax, 0xc
jae 0x10003303
mov cl, byte [ebp - 0x24]
jmp 0x10003672
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 0x100036ac
mov cl, byte [ebp - 0x20]
jmp 0x1000369d
lea eax, [ebp - 0x1f]
jmp 0x100038da
sub eax, 0x47
je 0x10003717
sub eax, 1
je 0x100036ef
sub eax, 1
jne 0x100038e5
movaps xmm0, xmmword [0x1004bba0]
mov ecx, edx
movups xmmword [ebp - 0x28], xmm0
mov word [ebp - 0x18], 0x1e
mov al, byte [ebp - 0x28]
xor byte [ebp + ecx - 0x27], al
inc ecx
cmp ecx, 0x10
jb 0x100036da
lea eax, [ebp - 0x27]
jmp 0x100038da
mov cl, 0x6e
mov dword [ebp - 0x20], 0xa1c2f6e
mov dword [ebp - 0x1c], 0x30f0b1c
mov eax, edx
mov byte [ebp - 0x18], dl
xor byte [ebp + eax - 0x1f], cl
inc eax
cmp eax, 7
jae 0x1000336d
mov cl, byte [ebp - 0x20]
jmp 0x10003704
mov cl, 0x6c
mov dword [ebp - 0x24], 0x2033e6c
mov dword [ebp - 0x20], 0x4c071e0d
mov eax, edx
mov dword [ebp - 0x1c], 0x8020d20
mov byte [ebp - 0x18], dl
xor byte [ebp + eax - 0x23], cl
inc eax
cmp eax, 0xb
jae 0x10003549
mov cl, byte [ebp - 0x24]
jmp 0x10003733
movaps xmm0, xmmword [0x1004c280]
mov ecx, edx
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0x36a2e2b
mov byte [ebp - 0x18], dl
mov al, byte [ebp - 0x2c]
xor byte [ebp + ecx - 0x2b], al
inc ecx
cmp ecx, 0x13
jb 0x1000375d
mov byte [ebp - 0x18], dl
lea eax, [ebp - 0x2b]
jmp 0x100038dd
sub eax, 0x52
je 0x100038b0
sub eax, 1
je 0x1000387e
sub eax, 1
je 0x10003855
sub eax, 3
je 0x1000382d
sub eax, 5
je 0x10003804
sub eax, 1
je 0x100037cb
sub eax, 1
jne 0x100038e5
movaps xmm0, xmmword [0x1004b9c0]
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 0x100037b9
jmp 0x1000356b
mov cl, 0xa
mov dword [ebp - 0x24], 0x6379430a
mov dword [ebp - 0x20], 0x64656566
mov eax, edx
mov dword [ebp - 0x1c], 0x6f784b2a
mov word [ebp - 0x18], 0x6b64
mov byte [ebp - 0x16], dl
xor byte [ebp + eax - 0x23], cl
inc eax
cmp eax, 0xd
jae 0x100037fc
mov cl, byte [ebp - 0x24]
jmp 0x100037ed
mov byte [ebp - 0x16], dl
jmp 0x10003437
mov cl, 0x3e
mov dword [ebp - 0x20], 0x574c6e3e
mov dword [ebp - 0x1c], 0x50514d
mov eax, edx
xor byte [ebp + eax - 0x1f], cl
inc eax
cmp eax, 6
jae 0x10003825
mov cl, byte [ebp - 0x20]
jmp 0x10003816
mov byte [ebp - 0x19], dl
jmp 0x10003370
movaps xmm0, xmmword [0x1004c740]
mov ecx, edx
movups xmmword [ebp - 0x28], xmm0
mov word [ebp - 0x18], 0x7420
mov byte [ebp - 0x16], dl
mov al, byte [ebp - 0x28]
xor byte [ebp + ecx - 0x27], al
inc ecx
cmp ecx, 0x11
jb 0x10003843
jmp 0x100033ae
movaps xmm0, xmmword [0x1004c730]
mov ecx, edx
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0x3b281e
mov al, byte [ebp - 0x2c]
xor byte [ebp + ecx - 0x2b], al
inc ecx
cmp ecx, 0x12
jb 0x10003869
mov byte [ebp - 0x19], dl
jmp 0x1000376d
movaps xmm0, xmmword [0x1004c4e0]
mov ecx, edx
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0x6b024643
mov word [ebp - 0x18], 0x6b6b
mov byte [ebp - 0x16], dl
mov al, byte [ebp - 0x2c]
xor byte [ebp + ecx - 0x2b], al
inc ecx
cmp ecx, 0x15
jb 0x1000389b
mov byte [ebp - 0x16], dl
jmp 0x1000376d
movaps xmm0, xmmword [0x1004bea0]
mov ecx, edx
movups xmmword [ebp - 0x2c], xmm0
mov dword [ebp - 0x1c], 0x224b0f0a
mov word [ebp - 0x18], 0x22
mov al, byte [ebp - 0x2c]
xor byte [ebp + ecx - 0x2b], al
inc ecx
cmp ecx, 0x14
jb 0x100038ca
lea eax, [ebp - 0x2b]
mov byte [ebp - 0x17], dl
push eax
mov ecx, esi
call fcn.10003b50
mov eax, esi
call fcn.1003d37b
ret 4