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

Disassembly:
push 0x104
mov eax, 0x100788d2
call fcn.1004605f
mov ebx, ecx
mov dword [ebp - 0xd4], ebx
mov cl, 0x77
mov dword [ebp - 0xc0], 0x19031577
mov dword [ebp - 0xbc], 0x181b1428
xor eax, eax
mov word [ebp - 0xb8], 0x1204
mov byte [ebp - 0xb6], 0
xor byte [ebp + eax - 0xbf], cl
inc eax
cmp eax, 9
jae 0x100375a8
mov cl, byte [ebp - 0xc0]
jmp 0x10037593
lea eax, [ebp - 0xbf]
mov byte [ebp - 0xb6], 0
push eax
lea ecx, [ebp - 0xb4]
call fcn.10001f6a
mov ecx, dword [ebx]
lea edx, [ebp - 0xb4]
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0xb4]
mov dword [ebx + 4], eax
call fcn.10001e1f
push 0xf
pop eax
mov dword [ebp - 0xf4], eax
mov cl, 0x6a
mov byte [ebp - 0x7a], al
mov byte [ebp - 0x74], al
xor eax, eax
mov dword [ebp - 0x80], 0x41e086a
mov word [ebp - 0x7c], 0x1835
mov dword [ebp - 0x79], 0x180b0209
mov byte [ebp - 0x75], 0xd
mov byte [ebp - 0x73], 0
xor byte [ebp + eax - 0x7f], cl
inc eax
cmp eax, 0xc
jae 0x1003761e
mov cl, byte [ebp - 0x80]
jmp 0x1003760f
lea eax, [ebp - 0x7f]
mov byte [ebp - 0x73], 0
push eax
lea ecx, [ebp - 0xb4]
call fcn.10001f6a
mov ecx, dword [ebx]
lea edx, [ebp - 0xb4]
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0xb4]
mov dword [ebx + 8], eax
call fcn.10001e1f
mov cl, 0x6a
mov dword [ebp - 0x8c], 0x1e121e6a
mov dword [ebp - 0x88], 0x190b0935
xor eax, eax
mov word [ebp - 0x84], 2
xor byte [ebp + eax - 0x8b], cl
inc eax
cmp eax, 8
jae 0x10037686
mov cl, byte [ebp - 0x8c]
jmp 0x10037671
lea eax, [ebp - 0x8b]
mov byte [ebp - 0x83], 0
push eax
lea ecx, [ebp - 0xb4]
call fcn.10001f6a
mov ecx, dword [ebx]
lea edx, [ebp - 0xb4]
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0xb4]
mov dword [ebx + 0xc], eax
call fcn.10001e1f
mov cl, 0x36
mov dword [ebp - 0x80], 0x424e4236
mov dword [ebp - 0x7c], 0x5a575469
xor eax, eax
mov dword [ebp - 0x78], 0x53555857
mov byte [ebp - 0x74], 0
xor byte [ebp + eax - 0x7f], cl
inc eax
cmp eax, 0xb
jae 0x100376ea
mov cl, byte [ebp - 0x80]
jmp 0x100376db
lea eax, [ebp - 0x7f]
mov byte [ebp - 0x74], 0
push eax
lea ecx, [ebp - 0xb4]
call fcn.10001f6a
mov ecx, dword [ebx]
lea edx, [ebp - 0xb4]
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0xb4]
mov dword [ebx + 0x10], eax
call fcn.10001e1f
movaps xmm0, xmmword [0x1008e220]
xor ecx, ecx
movups xmmword [ebp - 0x20], xmm0
mov al, byte [ebp - 0x20]
xor byte [ebp + ecx - 0x1f], al
inc ecx
cmp ecx, 0xe
jb 0x10037729
lea eax, [ebp - 0x1f]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0xb4]
call fcn.10001f6a
mov ecx, dword [ebx]
lea edx, [ebp - 0xb4]
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0xb4]
mov dword [ebx + 0x14], eax
call fcn.10001e1f
mov cl, 0x49
mov dword [ebp - 0x8c], 0xa2c1b49
mov dword [ebp - 0x88], 0x2e3b2821
xor eax, eax
mov word [ebp - 0x84], 0x2c
xor byte [ebp + eax - 0x8b], cl
inc eax
cmp eax, 8
jae 0x1003779e
mov cl, byte [ebp - 0x8c]
jmp 0x10037789
lea eax, [ebp - 0x8b]
mov byte [ebp - 0x83], 0
push eax
lea ecx, [ebp - 0xb4]
call fcn.10001f6a
mov ecx, dword [ebx + 0x14]
lea edx, [ebp - 0xb4]
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0xb4]
mov dword [ebx + 0x18], eax
call fcn.10001e1f
cmp dword [ebx + 0x18], 0
je 0x10037984
xor eax, eax
mov dword [ebp - 0xd0], 5
mov dword [ebp - 0xf0], eax
lea esi, [ebx + 0x24]
push eax
push 0x2e
pop eax
mov byte [ebp - 0x98], al
mov cl, 0x5a
mov byte [ebp - 0x92], al
xor eax, eax
mov dword [ebp - 0x9c], 0x333e3f5a
mov dword [ebp - 0x97], 0x2a343305
mov byte [ebp - 0x93], 0x2f
mov dword [ebp - 0x91], 0x3e7f05
xor byte [ebp + eax - 0x9b], cl
inc eax
cmp eax, 0xd
jae 0x10037844
mov cl, byte [ebp - 0x9c]
jmp 0x1003782f
sub esp, 0x18
mov byte [ebp - 0x8e], 0
lea eax, [ebp - 0x9b]
mov ecx, esp
push eax
call fcn.10001f6a
lea eax, [ebp - 0xec]
push eax
call fcn.10007414
mov ecx, dword [ebx + 0x18]
add esp, 0x20
mov edx, eax
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0xec]
mov dword [esi], eax
call fcn.10001e1f
mov edi, dword [esi]
test edi, edi
je 0x100378a3
push 4
push edi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x100378a3
push 4
mov ecx, edi
call dword [0x1008ddc0]
mov eax, dword [ebp - 0xf0]
add esi, 4
inc eax
sub dword [ebp - 0xd0], 1
mov dword [ebp - 0xf0], eax
jne 0x100377f6
mov cl, 0x75
mov dword [ebp - 0x80], 0x1b011775
mov dword [ebp - 0x7c], 0x1b1a162a
xor eax, eax
mov dword [ebp - 0x78], 0x18071c13
mov byte [ebp - 0x74], 0
xor byte [ebp + eax - 0x7f], cl
inc eax
cmp eax, 0xb
jae 0x100378ec
mov cl, byte [ebp - 0x80]
jmp 0x100378dd
lea eax, [ebp - 0x7f]
mov byte [ebp - 0x74], 0
push eax
lea ecx, [ebp - 0xb4]
call fcn.10001f6a
mov ecx, dword [ebx + 0x18]
lea edx, [ebp - 0xb4]
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0xb4]
mov dword [ebx + 0x38], eax
call fcn.10001e1f
mov cl, 0x30
mov dword [ebp - 0x80], 0x5e445230
mov dword [ebp - 0x7c], 0x5e51536f
xor eax, eax
mov dword [ebp - 0x78], 0x5c5553
xor byte [ebp + eax - 0x7f], cl
inc eax
cmp eax, 0xa
jae 0x10037947
mov cl, byte [ebp - 0x80]
jmp 0x10037938
lea eax, [ebp - 0x7f]
mov byte [ebp - 0x75], 0
push eax
lea ecx, [ebp - 0xb4]
call fcn.10001f6a
mov ecx, dword [ebx + 0x18]
lea edx, [ebp - 0xb4]
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0xb4]
mov dword [ebx + 0x3c], eax
call fcn.10001e1f
mov ecx, dword [ebx + 0x18]
xor dl, dl
call fcn.10010276
movaps xmm0, xmmword [0x1008e6b0]
xor ecx, ecx
movups xmmword [ebp - 0xb0], xmm0
mov word [ebp - 0xa0], 0x10
mov al, byte [ebp - 0xb0]
xor byte [ebp + ecx - 0xaf], al
inc ecx
cmp ecx, 0x10
jb 0x1003799d
lea eax, [ebp - 0xaf]
mov byte [ebp - 0x9f], 0
push eax
lea ecx, [ebp - 0x38]
call fcn.10001f6a
mov ecx, dword [ebx + 0x14]
lea edx, [ebp - 0x38]
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0x38]
mov dword [ebx + 0x1c], eax
call fcn.10001e1f
xor edx, edx
cmp dword [ebx + 0x1c], edx
je 0x10037cf9
mov cl, 0x10
mov dword [ebp - 0x9c], 0x7f784310
mov dword [ebp - 0x98], 0x7e796060
mov eax, edx
mov dword [ebp - 0x94], 0x715e4f77
mov word [ebp - 0x90], 0x757d
mov byte [ebp - 0x8e], dl
xor byte [ebp + eax - 0x9b], cl
inc eax
cmp eax, 0xd
jae 0x10037a31
mov cl, byte [ebp - 0x9c]
jmp 0x10037a1c
lea eax, [ebp - 0x9b]
mov byte [ebp - 0x8e], dl
push eax
lea ecx, [ebp - 0xb4]
call fcn.10001f6a
mov ecx, dword [ebx + 0x1c]
lea edx, [ebp - 0xb4]
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0xb4]
mov dword [ebx + 0x40], eax
call fcn.10001e1f
movaps xmm0, xmmword [str.:iRUJJST_ejHSY_]
xor ecx, ecx
movups xmmword [ebp - 0x20], xmm0
mov al, byte [ebp - 0x20]
xor byte [ebp + ecx - 0x1f], al
inc ecx
cmp ecx, 0xe
jb 0x10037a76
lea eax, [ebp - 0x1f]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0xb4]
call fcn.10001f6a
mov ecx, dword [ebx + 0x1c]
lea edx, [ebp - 0xb4]
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0xb4]
mov dword [ebx + 0x44], eax
call fcn.10001e1f
movaps xmm0, xmmword [0x1008f420]
xor ecx, ecx
movups xmmword [ebp - 0xb0], xmm0
mov word [ebp - 0xa0], 0x6d60
mov byte [ebp - 0x9e], 0
mov al, byte [ebp - 0xb0]
xor byte [ebp + ecx - 0xaf], al
inc ecx
cmp ecx, 0x11
jb 0x10037ad6
lea eax, [ebp - 0xaf]
mov byte [ebp - 0x9e], 0
push eax
lea ecx, [ebp - 0x38]
call fcn.10001f6a
mov ecx, dword [ebx + 0x1c]
lea edx, [ebp - 0x38]
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0x38]
mov dword [ebx + 0x48], eax
call fcn.10001e1f
movaps xmm0, xmmword [0x1008eee0]
xor ecx, ecx
movups xmmword [ebp - 0xb0], xmm0
mov dword [ebp - 0xa0], 0x656176
mov al, byte [ebp - 0xb0]
xor byte [ebp + ecx - 0xaf], al
inc ecx
cmp ecx, 0x12
jb 0x10037b33
lea eax, [ebp - 0xaf]
mov byte [ebp - 0x9d], 0
push eax
lea ecx, [ebp - 0x38]
call fcn.10001f6a
mov ecx, dword [ebx + 0x1c]
lea edx, [ebp - 0x38]
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0x38]
mov dword [ebx + 0x4c], eax
call fcn.10001e1f
call fcn.1000cda1
test eax, eax
je 0x10037c32
mov dword [ebx + 0x50], eax
call fcn.1001086b
test eax, eax
je 0x10037c32
mov ecx, dword [ebx + 0x50]
mov dword [ecx], eax
mov ecx, dword [ebx + 0x50]
mov edx, dword [ebx + 0x1c]
mov ecx, dword [ecx]
call fcn.1001000f
mov ecx, dword [ebx + 0x50]
sub esp, 0x14
movss xmm3, dword [0x1008e16c]
xorps xmm2, xmm2
xorps xmm1, xmm1
and dword [esp + 0x10], 0
and dword [esp + 0xc], 0
and dword [esp + 8], 0
and dword [esp + 4], 0
mov ecx, dword [ecx]
mov dword [esp], 0x3f340000
call fcn.100109bd
mov ecx, dword [ebx + 0x50]
mov ecx, dword [ecx]
call fcn.100102f3
mov ecx, dword [ebx + 0x50]
mov edx, 0x110
mov ecx, dword [ecx]
call fcn.10010397
mov ecx, dword [ebx + 0x4c]
lea eax, [ebp - 0x30]
push eax
call fcn.100100cd
mov ecx, dword [ebx + 0x50]
lea edi, [ebp - 0x20]
mov esi, eax
lea edx, [ebp - 0x20]
add esp, 0x18
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov ecx, dword [ecx]
call fcn.1001099a
mov ecx, dword [ebx + 0x50]
lea edx, [ebp - 0x20]
mov ecx, dword [ecx]
call fcn.10010141
mov ecx, dword [ebx + 0x50]
xor dl, dl
mov ecx, dword [ecx]
call fcn.10010276
push 0x11
pop ecx
mov byte [ebp - 0x80], cl
xor eax, eax
mov dword [ebp - 0x7f], 0x4e7f6573
mov dword [ebp - 0x7b], 0x777f7e72
mov dword [ebp - 0x77], 0x7c6378
xor byte [ebp + eax - 0x7f], cl
inc eax
cmp eax, 0xb
jae 0x10037c5e
mov cl, byte [ebp - 0x80]
jmp 0x10037c4f
lea eax, [ebp - 0x7f]
mov byte [ebp - 0x74], 0
push eax
lea ecx, [ebp - 0xb4]
call fcn.10001f6a
mov ecx, dword [ebx + 0x1c]
lea edx, [ebp - 0xb4]
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0xb4]
mov dword [ebx + 0x54], eax
call fcn.10001e1f
xor edx, edx
mov dword [ebp - 0x80], 0x1a0c6e
mov cl, 0x6e
mov dword [ebp - 0x7c], 0xf0d31
mov dword [ebp - 0x78], 0x20b0d
mov eax, edx
xor byte [ebp + eax - 0x7f], cl
inc eax
cmp eax, 0xa
jae 0x10037cbb
mov cl, byte [ebp - 0x80]
jmp 0x10037cac
lea eax, [ebp - 0x7f]
mov byte [ebp - 0x75], dl
push eax
lea ecx, [ebp - 0xb4]
call fcn.10001f6a
mov ecx, dword [ebx + 0x1c]
lea edx, [ebp - 0xb4]
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0xb4]
mov dword [ebx + 0x58], eax
call fcn.10001e1f
mov ecx, dword [ebx + 0x1c]
xor dl, dl
call fcn.10010276
xor edx, edx
movaps xmm0, xmmword [0x1008f1f0]
mov ecx, edx
movups xmmword [ebp - 0xb4], xmm0
mov dword [ebp - 0xa4], 0x75574b79
mov word [ebp - 0xa0], 0x6066
mov byte [ebp - 0x9e], dl
mov al, byte [ebp - 0xb4]
xor byte [ebp + ecx - 0xb3], al
inc ecx
cmp ecx, 0x15
jb 0x10037d22
lea eax, [ebp - 0xb3]
mov byte [ebp - 0x9e], dl
push eax
lea ecx, [ebp - 0x38]
call fcn.10001f6a
mov ecx, dword [ebx + 0x14]
lea edx, [ebp - 0x38]
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0x38]
mov dword [ebx + 0x20], eax
call fcn.10001e1f
cmp dword [ebx + 0x20], 0
je 0x10037e86
movaps xmm0, xmmword [0x1008e470]
xor ecx, ecx
movups xmmword [ebp - 0x20], xmm0
mov al, byte [ebp - 0x20]
xor byte [ebp + ecx - 0x1f], al
inc ecx
cmp ecx, 0xe
jb 0x10037d7b
lea eax, [ebp - 0x1f]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0xb4]
call fcn.10001f6a
mov ecx, dword [ebx + 0x20]
lea edx, [ebp - 0xb4]
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0xb4]
mov dword [ebx + 0x7c], eax
call fcn.10001e1f
movaps xmm0, xmmword [0x1008f020]
xor ecx, ecx
movups xmmword [ebp - 0xb0], xmm0
mov word [ebp - 0xa0], 0x54
mov al, byte [ebp - 0xb0]
xor byte [ebp + ecx - 0xaf], al
inc ecx
cmp ecx, 0x10
jb 0x10037dd4
lea eax, [ebp - 0xaf]
mov byte [ebp - 0x9f], 0
push eax
lea ecx, [ebp - 0x38]
call fcn.10001f6a
mov ecx, dword [ebx + 0x20]
lea edx, [ebp - 0x38]
call fcn.10010042
mov dword [ebx + 0x80], eax
lea ecx, [ebp - 0x38]
xor ebx, ebx
push ebx
push 1
call fcn.10001e1f
movaps xmm0, xmmword [0x1008f3f0]
mov ecx, ebx
movups xmmword [ebp - 0xb0], xmm0
mov byte [ebp - 0xa0], bl
mov al, byte [ebp - 0xb0]
xor byte [ebp + ecx - 0xaf], al
inc ecx
cmp ecx, 0xf
jb 0x10037e31
lea eax, [ebp - 0xaf]
mov byte [ebp - 0xa0], bl
push eax
lea ecx, [ebp - 0x38]
call fcn.10001f6a
mov ebx, dword [ebp - 0xd4]
lea edx, [ebp - 0x38]
mov ecx, dword [ebx + 0x20]
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0x38]
mov dword [ebx + 0x84], eax
call fcn.10001e1f
mov ecx, dword [ebx + 0x20]
xor dl, dl
call fcn.10010276
mov cl, 0xd
mov dword [ebp - 0x80], 0x6469680d
mov dword [ebp - 0x7c], 0x687e5279
xor eax, eax
mov dword [ebp - 0x78], 0x656e7f6c
mov byte [ebp - 0x74], 0
xor byte [ebp + eax - 0x7f], cl
inc eax
cmp eax, 0xb
jae 0x10037eb2
mov cl, byte [ebp - 0x80]
jmp 0x10037ea3
lea eax, [ebp - 0x7f]
mov byte [ebp - 0x74], 0
push eax
lea ecx, [ebp - 0xb4]
call fcn.10001f6a
mov ecx, dword [ebx + 0x14]
lea edx, [ebp - 0xb4]
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0xb4]
mov dword [ebx + 0x88], eax
call fcn.10001e1f
mov cl, 0xd
mov dword [ebp - 0x80], 0x63796f0d
mov dword [ebp - 0x7c], 0x6c687e52
xor eax, eax
mov dword [ebp - 0x78], 0x656e7f
xor byte [ebp + eax - 0x7f], cl
inc eax
cmp eax, 0xa
jae 0x10037f10
mov cl, byte [ebp - 0x80]
jmp 0x10037f01
lea eax, [ebp - 0x7f]
mov byte [ebp - 0x75], 0
push eax
lea ecx, [ebp - 0xb4]
call fcn.10001f6a
mov ecx, dword [ebx + 0x14]
lea edx, [ebp - 0xb4]
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0xb4]
mov dword [ebx + 0x8c], eax
call fcn.10001e1f
push 6
pop eax
xor esi, esi
mov dword [ebp - 0xf0], eax
lea edi, [ebx + 0x90]
mov dword [ebp - 0xd0], eax
movaps xmm0, xmmword [0x1008f1d0]
xor ecx, ecx
push esi
movups xmmword [ebp - 0xb0], xmm0
mov byte [ebp - 0xa0], 0
mov al, byte [ebp - 0xb0]
xor byte [ebp + ecx - 0xaf], al
inc ecx
cmp ecx, 0xf
jb 0x10037f75
sub esp, 0x18
mov byte [ebp - 0xa0], 0
lea eax, [ebp - 0xaf]
mov ecx, esp
push eax
call fcn.10001f6a
lea eax, [ebp - 0xec]
push eax
call fcn.10007414
mov ebx, dword [ebp - 0xd4]
add esp, 0x20
mov edx, eax
mov ecx, dword [ebx + 0x14]
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0xec]
mov dword [edi], eax
call fcn.10001e1f
inc esi
add edi, 4
sub dword [ebp - 0xd0], 1
jne 0x10037f5d
mov cl, 0x14
mov dword [ebp - 0x80], 0x7b667314
mov dword [ebp - 0x7c], 0x7d4b6461
xor eax, eax
mov dword [ebp - 0x78], 0x67797160
mov byte [ebp - 0x74], 0
xor byte [ebp + eax - 0x7f], cl
inc eax
cmp eax, 0xb
jae 0x10038009
mov cl, byte [ebp - 0x80]
jmp 0x10037ffa
lea eax, [ebp - 0x7f]
mov byte [ebp - 0x74], 0
push eax
lea ecx, [ebp - 0xb4]
call fcn.10001f6a
mov ecx, dword [ebx + 0x14]
lea edx, [ebp - 0xb4]
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0xb4]
mov dword [ebx + 0xa8], eax
call fcn.10001e1f
xor eax, eax
lea esi, [ebx + 0xac]
mov dword [ebp - 0xd4], eax
mov dword [ebp - 0xd0], esi
push eax
mov cl, 0x6d
mov dword [ebp - 0x8c], 0x819246d
mov dword [ebp - 0x88], 0x9483200
xor eax, eax
mov byte [ebp - 0x84], 0
xor byte [ebp + eax - 0x8b], cl
inc eax
cmp eax, 7
jae 0x10038088
mov cl, byte [ebp - 0x8c]
jmp 0x10038073
sub esp, 0x18
mov byte [ebp - 0x84], 0
lea eax, [ebp - 0x8b]
mov ecx, esp
push eax
call fcn.10001f6a
lea eax, [ebp - 0xec]
push eax
call fcn.10007414
mov ecx, dword [ebx + 0xa8]
add esp, 0x20
mov edx, eax
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0xec]
mov dword [esi], eax
call fcn.10001e1f
xor edx, edx
mov dword [ebp - 0x4c], edx
mov dword [ebp - 0x44], edx
mov dword [ebp - 4], edx
xorps xmm0, xmm0
push 6
pop eax
mov byte [ebp - 0x101], al
mov cl, 0x63
mov byte [ebp - 0xfb], al
mov eax, edx
mov dword [ebp - 0x60], edx
mov dword [ebp - 0x64], edx
mov dword [ebp - 0x68], edx
mov dword [ebp - 0x6c], edx
mov dword [ebp - 0x70], edx
mov dword [ebp - 0x58], edx
mov dword [ebp - 0x5c], edx
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x50], edx
mov dword [ebp - 0x48], edx
movlpd qword [ebp - 0x40], xmm0
mov dword [ebp - 0x108], 0x171b1763
mov word [ebp - 0x104], 0xa3c
mov byte [ebp - 0x102], 0x17
mov dword [ebp - 0x100], 0x20d3c0e
mov byte [ebp - 0xfc], 0xe
mov byte [ebp - 0xfa], dl
xor byte [ebp + eax - 0x107], cl
inc eax
cmp eax, 0xd
jae 0x10038157
mov cl, byte [ebp - 0x108]
jmp 0x10038142
lea eax, [ebp - 0x107]
mov byte [ebp - 0xfa], dl
push eax
lea ecx, [ebp - 0xec]
call fcn.10001f6a
mov ecx, dword [esi]
lea edx, [ebp - 0xec]
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0xec]
mov dword [ebp - 0x70], eax
call fcn.10001e1f
mov cl, 0x33
mov dword [ebp - 0xcc], 0x474b4733
mov dword [ebp - 0xc8], 0x5a41436c
xor eax, eax
mov word [ebp - 0xc4], 0x5650
mov byte [ebp - 0xc2], 0
xor byte [ebp + eax - 0xcb], cl
inc eax
cmp eax, 9
jae 0x100381cb
mov cl, byte [ebp - 0xcc]
jmp 0x100381b6
lea eax, [ebp - 0xcb]
mov byte [ebp - 0xc2], 0
push eax
lea ecx, [ebp - 0xec]
call fcn.10001f6a
mov ecx, dword [esi]
lea edx, [ebp - 0xec]
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0xec]
mov dword [ebp - 0x6c], eax
call fcn.10001e1f
mov cl, 0x3c
mov dword [ebp - 0x20], 0x4844483c
mov dword [ebp - 0x1c], 0x5d494d63
xor eax, eax
mov dword [ebp - 0x18], 0x48554852
mov word [ebp - 0x14], 0x4555
mov byte [ebp - 0x12], 0
xor byte [ebp + eax - 0x1f], cl
inc eax
cmp eax, 0xd
jae 0x10038235
mov cl, byte [ebp - 0x20]
jmp 0x10038226
lea eax, [ebp - 0x1f]
mov byte [ebp - 0x12], 0
push eax
lea ecx, [ebp - 0xec]
call fcn.10001f6a
mov ecx, dword [esi]
lea edx, [ebp - 0xec]
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0xec]
mov dword [ebp - 0x68], eax
call fcn.10001e1f
mov cl, 0x18
mov dword [ebp - 0x9c], 0x766c7a18
mov dword [ebp - 0x98], 0x6a6d6847
xor eax, eax
mov dword [ebp - 0x94], 0x6b79707b
mov word [ebp - 0x90], 0x7d
xor byte [ebp + eax - 0x9b], cl
inc eax
cmp eax, 0xc
jae 0x100382a7
mov cl, byte [ebp - 0x9c]
jmp 0x10038292
lea eax, [ebp - 0x9b]
mov byte [ebp - 0x8f], 0
push eax
lea ecx, [ebp - 0xec]
call fcn.10001f6a
mov ecx, dword [esi]
lea edx, [ebp - 0xec]
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0xec]
mov dword [ebp - 0x64], eax
call fcn.10001e1f
mov cl, 0x38
mov dword [ebp - 0xc0], 0x564c5a38
mov dword [ebp - 0xbc], 0x4a595b67
xor eax, eax
mov word [ebp - 0xb8], 0x4c
xor byte [ebp + eax - 0xbf], cl
inc eax
cmp eax, 8
jae 0x10038315
mov cl, byte [ebp - 0xc0]
jmp 0x10038300
lea eax, [ebp - 0xbf]
mov byte [ebp - 0xb7], 0
push eax
lea ecx, [ebp - 0xec]
call fcn.10001f6a
mov ecx, dword [esi]
lea edx, [ebp - 0xec]
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0xec]
mov dword [ebp - 0x60], eax
call fcn.10001e1f
mov cl, 0x13
mov dword [ebp - 0x80], 0x76617213
mov dword [ebp - 0x7c], 0x707a4c72
xor eax, eax
mov word [ebp - 0x78], 0x7d7c
mov byte [ebp - 0x76], 0
xor byte [ebp + eax - 0x7f], cl
inc eax
cmp eax, 9
jae 0x10038378
mov cl, byte [ebp - 0x80]
jmp 0x10038369
lea eax, [ebp - 0x7f]
mov byte [ebp - 0x76], 0
push eax
lea ecx, [ebp - 0xec]
call fcn.10001f6a
mov ecx, dword [esi]
lea edx, [ebp - 0xec]
call fcn.10010042
push 0
mov edi, eax
lea ecx, [ebp - 0xec]
push 1
mov dword [ebp - 0x5c], edi
call fcn.10001e1f
call fcn.1000cda1
mov esi, eax
mov dword [ebp - 0xf8], esi
test esi, esi
je 0x10038472
mov dword [ebp - 0x58], esi
call fcn.1001086b
test eax, eax
je 0x10038463
mov dword [esi], eax
mov ecx, eax
mov edx, dword [ebx + 0xa8]
call fcn.1001000f
movss xmm3, dword [0x1008e16c]
sub esp, 0x14
mov ecx, dword [esi]
xorps xmm2, xmm2
xorps xmm1, xmm1
and dword [esp + 0x10], 0
and dword [esp + 0xc], 0
and dword [esp + 8], 0
and dword [esp + 4], 0
mov dword [esp], 0x3f340000
call fcn.100109bd
mov ecx, dword [esi]
call fcn.100102f3
mov ecx, dword [esi]
mov edx, 0x110
call fcn.10010397
lea eax, [ebp - 0xac]
mov ecx, edi
push eax
call fcn.100100cd
mov esi, eax
lea edi, [ebp - 0x30]
add esp, 0x18
lea edx, [ebp - 0x30]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0xf8]
mov ecx, dword [esi]
call fcn.1001099a
mov ecx, dword [esi]
lea edx, [ebp - 0x30]
call fcn.10010141
mov ecx, dword [esi]
xor dl, dl
call fcn.10010276
lea eax, [ebp - 0x70]
push eax
lea ecx, [ebx + 0xe8]
call fcn.1003c2de
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x4c]
call fcn.100095a9
mov eax, dword [ebp - 0xd4]
mov esi, dword [ebp - 0xd0]
inc eax
add esi, 4
mov dword [ebp - 0xd4], eax
sub dword [ebp - 0xf4], 1
mov dword [ebp - 0xd0], esi
jne 0x10038053
mov cl, 7
mov dword [ebp - 0x80], 0x68756007
mov dword [ebp - 0x7c], 0x64587772
xor eax, eax
mov dword [ebp - 0x78], 0x737566
xor byte [ebp + eax - 0x7f], cl
inc eax
cmp eax, 0xa
jae 0x100384cf
mov cl, byte [ebp - 0x80]
jmp 0x100384c0
lea eax, [ebp - 0x7f]
mov byte [ebp - 0x75], 0
push eax
lea ecx, [ebp - 0xec]
call fcn.10001f6a
mov ecx, dword [ebx + 0x14]
lea edx, [ebp - 0xec]
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0xec]
mov dword [ebx + 0x100], eax
call fcn.10001e1f
xor edx, edx
lea esi, [ebx + 0x108]
mov eax, edx
mov dword [ebp - 0xd4], esi
mov dword [ebp - 0xf4], eax
push eax
mov cl, 0x4b
mov dword [ebp - 0x8c], 0x392a284b
mov dword [ebp - 0x88], 0x2f6e143f
mov eax, edx
mov byte [ebp - 0x84], dl
xor byte [ebp + eax - 0x8b], cl
inc eax
cmp eax, 7
jae 0x1003854f
mov cl, byte [ebp - 0x8c]
jmp 0x1003853a
sub esp, 0x18
mov byte [ebp - 0x84], dl
lea eax, [ebp - 0x8b]
mov ecx, esp
push eax
call fcn.10001f6a
lea eax, [ebp - 0xec]
push eax
call fcn.10007414
mov ecx, dword [ebx + 0x100]
add esp, 0x20
mov edx, eax
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0xec]
mov edi, eax
call fcn.10001e1f
mov cl, 0x20
mov dword [ebp - 0x80], 0x45524120
mov dword [ebp - 0x7c], 0x41437f41
xor eax, eax
mov word [ebp - 0x78], 0x5452
mov byte [ebp - 0x76], 0
xor byte [ebp + eax - 0x7f], cl
inc eax
cmp eax, 9
jae 0x100385be
mov cl, byte [ebp - 0x80]
jmp 0x100385af
lea eax, [ebp - 0x7f]
mov byte [ebp - 0x76], 0
push eax
lea ecx, [ebp - 0xec]
call fcn.10001f6a
lea edx, [ebp - 0xec]
mov ecx, edi
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0xec]
mov dword [esi - 4], eax
call fcn.10001e1f
call fcn.1000cda1
test eax, eax
je 0x100386af
mov dword [esi], eax
call fcn.1001086b
test eax, eax
je 0x100386af
mov ecx, dword [esi]
mov dword [ecx], eax
mov ecx, dword [esi]
mov edx, dword [ebx + 0x100]
mov ecx, dword [ecx]
call fcn.1001000f
mov ecx, dword [esi]
sub esp, 0x14
movss xmm3, dword [0x1008e16c]
xorps xmm2, xmm2
xorps xmm1, xmm1
and dword [esp + 0x10], 0
and dword [esp + 0xc], 0
and dword [esp + 8], 0
and dword [esp + 4], 0
mov ecx, dword [ecx]
mov dword [esp], 0x3f340000
call fcn.100109bd
mov ecx, dword [esi]
mov ecx, dword [ecx]
call fcn.100102f3
mov ecx, dword [esi]
mov edx, 0x110
mov ecx, dword [ecx]
call fcn.10010397
mov ecx, dword [esi - 4]
lea eax, [ebp - 0xac]
push eax
call fcn.100100cd
mov esi, eax
lea edi, [ebp - 0x30]
add esp, 0x18
lea edx, [ebp - 0x30]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
movsd dword es:[edi], dword [esi]
mov esi, dword [ebp - 0xd4]
mov ecx, dword [esi]
mov ecx, dword [ecx]
call fcn.1001099a
mov ecx, dword [esi]
lea edx, [ebp - 0x30]
mov ecx, dword [ecx]
call fcn.10010141
mov ecx, dword [esi]
xor dl, dl
mov ecx, dword [ecx]
call fcn.10010276
mov eax, dword [ebp - 0xf4]
xor edx, edx
mov dword [esi + 0x10], edx
inc eax
mov dword [esi + 0xc], edx
mov dword [esi + 8], edx
mov dword [esi + 4], edx
add esi, 0x18
sub dword [ebp - 0xf0], 1
mov dword [ebp - 0xf4], eax
mov dword [ebp - 0xd4], esi
jne 0x1003851b
movaps xmm0, xmmword [0x1008ed60]
mov ecx, edx
movups xmmword [ebp - 0xb0], xmm0
mov word [ebp - 0xa0], 0x39
mov al, byte [ebp - 0xb0]
xor byte [ebp + ecx - 0xaf], al
inc ecx
cmp ecx, 0x10
jb 0x100386f9
lea eax, [ebp - 0xaf]
mov byte [ebp - 0x9f], dl
push eax
lea ecx, [ebp - 0xec]
call fcn.10001f6a
mov ecx, dword [ebx + 0x14]
lea edx, [ebp - 0xec]
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0xec]
mov dword [ebx + 0x194], eax
call fcn.10001e1f
movaps xmm0, xmmword [0x1008e1c0]
xor ecx, ecx
movups xmmword [ebp - 0x20], xmm0
mov al, byte [ebp - 0x20]
xor byte [ebp + ecx - 0x1f], al
inc ecx
cmp ecx, 0xe
jb 0x10038754
lea eax, [ebp - 0x1f]
mov byte [ebp - 0x11], 0
push eax
lea ecx, [ebp - 0xec]
call fcn.10001f6a
mov ecx, dword [ebx + 0x14]
lea edx, [ebp - 0xec]
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0xec]
mov dword [ebx + 0x198], eax
call fcn.10001e1f
push 0x2e
pop ecx
mov byte [ebp - 0x9c], cl
xor eax, eax
mov dword [ebp - 0x9b], 0x71405a4c
mov dword [ebp - 0x97], 0x584b5c5e
mov dword [ebp - 0x93], 0x5d5b4147
mov byte [ebp - 0x8f], 0
xor byte [ebp + eax - 0x9b], cl
inc eax
cmp eax, 0xc
jae 0x100387dc
mov cl, byte [ebp - 0x9c]
jmp 0x100387c7
lea eax, [ebp - 0x9b]
mov byte [ebp - 0x8f], 0
push eax
lea ecx, [ebp - 0xec]
call fcn.10001f6a
mov ecx, dword [ebx + 0x14]
lea edx, [ebp - 0xec]
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0xec]
mov dword [ebx + 0x19c], eax
call fcn.10001e1f
push 0x31
pop ecx
mov byte [ebp - 0xc0], cl
xor eax, eax
mov dword [ebp - 0xbf], 0x6e454945
mov dword [ebp - 0xbb], 0x54565041
mov byte [ebp - 0xb7], 0
xor byte [ebp + eax - 0xbf], cl
inc eax
cmp eax, 8
jae 0x10038853
mov cl, byte [ebp - 0xc0]
jmp 0x1003883e
lea eax, [ebp - 0xbf]
mov byte [ebp - 0xb7], 0
push eax
lea ecx, [ebp - 0xec]
call fcn.10001f6a
mov ecx, dword [ebx + 0x14]
lea edx, [ebp - 0xec]
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0xec]
mov dword [ebx + 0x1a0], eax
call fcn.10001e1f
push 0x4a
pop ecx
mov byte [ebp - 0xcc], cl
xor eax, eax
mov dword [ebp - 0xcb], 0x15243e28
mov dword [ebp - 0xc7], 0x3e322f24
mov byte [ebp - 0xc3], 0
xor byte [ebp + eax - 0xcb], cl
inc eax
cmp eax, 8
jae 0x100388ca
mov cl, byte [ebp - 0xcc]
jmp 0x100388b5
lea eax, [ebp - 0xcb]
mov byte [ebp - 0xc3], 0
push eax
lea ecx, [ebp - 0x110]
call fcn.10001f6a
mov ecx, dword [ebx + 0x14]
lea edx, [ebp - 0x110]
call fcn.10010042
push 0
push 1
lea ecx, [ebp - 0x110]
mov dword [ebx + 0x1a4], eax
call fcn.10001e1f
call fcn.10046009
ret