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

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x1c
cmp dword [0x101075b4], 0
push ebx
push esi
push edi
jne 0x10039086
mov eax, dword [0x10107740]
xor ecx, ecx
movaps xmm0, xmmword [0x100ff910]
mov edx, dword [eax + 0x1c]
mov eax, dword [edx]
movups xmmword [ebp - 0x18], xmm0
mov byte [ebp - 8], 0
mov esi, dword [eax + 0x11c]
mov al, byte [ebp - 0x18]
xor byte [ebp + ecx - 0x17], al
inc ecx
cmp ecx, 0xe
jb 0x10039053
push 0
push 1
push str.Model_textures
lea eax, [ebp - 0x17]
mov word [ebp - 9], 0x100
push eax
mov ecx, edx
call esi
mov ecx, eax
mov dword [0x101075b4], ecx
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
cmp dword [0x101075b0], 0
jne 0x100390f5
mov eax, dword [0x10107740]
mov cl, 0x57
mov edx, dword [eax + 0x1c]
mov eax, dword [edx]
mov dword [ebp - 0x18], 0x3a322357
mov dword [ebp - 0x14], 0x27227827
mov dword [ebp - 0x10], 0x32233633
mov esi, dword [eax + 0x11c]
xor eax, eax
mov dword [ebp - 0xc], 0x243b
nop
xor byte [ebp + eax - 0x17], cl
inc eax
cmp eax, 0xd
jae 0x100390cf
mov cl, byte [ebp - 0x18]
jmp 0x100390c0
push 0
push 1
push str.Model_textures
lea eax, [ebp - 0x17]
mov word [ebp - 0xa], 0x100
push eax
mov ecx, edx
call esi
mov ecx, eax
mov dword [0x101075b0], ecx
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
cmp dword [0x101075ac], 0
jne 0x10039189
mov eax, dword [0x10107740]
mov bl, 0x4e
mov ch, bl
mov byte [ebp - 1], 0x55
mov cl, 0x5b
mov dl, 0x53
mov dh, 0x57
mov bh, 0x50
mov edi, dword [eax + 0x1c]
push 0
push 1
push str.Model_textures
mov eax, dword [edi]
mov byte [ebp - 0x14], 0x3e
mov byte [ebp - 0xa], 0
mov word [ebp - 0xa], 0x100
mov esi, dword [eax + 0x11c]
mov al, 0x4a
xor al, byte [ebp - 0x14]
mov ah, 0x11
mov byte [ebp - 0x13], al
mov al, byte [ebp - 0x14]
xor cl, al
xor ch, al
xor dl, al
mov byte [ebp - 0x12], cl
xor bl, al
mov byte [ebp - 0xe], ch
xor ah, al
mov byte [ebp - 0x11], dl
xor dh, al
mov byte [ebp - 0xf], ah
xor bh, al
mov byte [ebp - 0x10], bl
mov al, byte [ebp - 1]
mov ecx, edi
xor al, byte [ebp - 0x14]
mov byte [ebp - 0xb], al
lea eax, [ebp - 0x13]
push eax
mov byte [ebp - 0xd], dh
mov byte [ebp - 0xc], bh
call esi
mov ecx, eax
mov dword [0x101075ac], ecx
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
cmp dword [0x101075a8], 0
jne 0x1003920c
mov eax, dword [0x10107740]
mov cl, 0x66
push 0
mov dh, cl
mov dl, 0x6e
mov ch, 0x71
mov bl, 0x73
mov edi, dword [eax + 0x1c]
mov bh, 0x67
push 1
push str.Model_textures
mov eax, dword [edi]
mov byte [ebp - 0x14], 3
mov byte [ebp - 0xb], 0
mov word [ebp - 0xb], 0x100
mov esi, dword [eax + 0x11c]
mov al, 0x77
xor al, byte [ebp - 0x14]
mov ah, 0x2c
mov byte [ebp - 0x13], al
mov al, byte [ebp - 0x14]
xor ah, al
xor cl, al
xor ch, al
mov byte [ebp - 0xf], ah
xor dl, al
mov byte [ebp - 0x12], cl
xor bl, al
mov byte [ebp - 0xe], ch
xor dh, al
mov byte [ebp - 0x11], dl
xor bh, al
mov byte [ebp - 0x10], bl
lea eax, [ebp - 0x13]
mov byte [ebp - 0xd], dh
push eax
mov ecx, edi
mov byte [ebp - 0xc], bh
call esi
mov ecx, eax
mov dword [0x101075a8], ecx
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
cmp dword [0x101075a4], 0
jne 0x10039279
mov eax, dword [0x10107740]
mov cl, 0x16
mov edx, dword [eax + 0x1c]
mov eax, dword [edx]
mov dword [ebp - 0x18], 0x7b736216
mov dword [ebp - 0x14], 0x797b3966
mov dword [ebp - 0x10], 0x657a7372
mov esi, dword [eax + 0x11c]
xor eax, eax
mov word [ebp - 0xc], 0
xor byte [ebp + eax - 0x17], cl
inc eax
cmp eax, 0xb
jae 0x10039253
mov cl, byte [ebp - 0x18]
jmp 0x10039244
push 0
push 1
push str.Model_textures
lea eax, [ebp - 0x17]
mov word [ebp - 0xc], 0x100
push eax
mov ecx, edx
call esi
mov ecx, eax
mov dword [0x101075a4], ecx
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
cmp dword [0x101075a0], 0
jne 0x10039318
mov eax, dword [0x10107740]
xor cl, cl
mov byte [ebp - 1], 0x57
mov ch, 0x17
push 0
mov byte [ebp - 2], 0x54
xor dh, dh
mov edi, dword [eax + 0x1c]
mov dl, 8
push 1
mov bl, 0x15
mov bh, 3
push str.Model_textures
mov eax, dword [edi]
mov byte [ebp - 0x14], 0x65
xor cl, byte [ebp - 0x14]
mov byte [ebp - 0x12], cl
mov esi, dword [eax + 0x11c]
mov al, 0x11
xor al, byte [ebp - 0x14]
mov ah, 0x4a
mov cl, byte [ebp - 0x14]
mov byte [ebp - 0x13], al
xor ah, cl
mov al, byte [ebp - 1]
xor ch, cl
xor al, cl
mov byte [ebp - 9], dh
mov byte [ebp - 0xb], al
xor dl, cl
mov al, byte [ebp - 2]
xor bl, cl
xor al, cl
mov byte [ebp - 0xf], ah
mov byte [ebp - 0xa], al
xor dh, cl
xor bh, cl
mov byte [ebp - 0xe], ch
lea eax, [ebp - 0x13]
mov byte [ebp - 0x11], dl
push eax
mov ecx, edi
mov byte [ebp - 0x10], bl
mov byte [ebp - 0xd], dh
mov byte [ebp - 0xc], bh
mov word [ebp - 9], 0x100
call esi
mov ecx, eax
mov dword [0x101075a0], ecx
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
cmp dword [0x1010759c], 0
jne 0x100393ac
mov eax, dword [0x10107740]
mov cl, 0x7c
mov dl, 0x74
mov byte [ebp - 2], 0x77
mov ch, 0x7a
mov dh, 0x60
mov bl, 0x69
mov bh, 0x78
mov edi, dword [eax + 0x1c]
push 0
push 1
push str.Model_textures
mov eax, dword [edi]
mov byte [ebp - 0x14], 0x19
mov byte [ebp - 0xa], 0
mov word [ebp - 0xa], 0x100
mov esi, dword [eax + 0x11c]
mov al, 0x6d
xor al, byte [ebp - 0x14]
mov ah, 0x36
mov byte [ebp - 0x13], al
mov al, byte [ebp - 0x14]
xor cl, al
xor ch, al
xor dl, al
mov byte [ebp - 0x12], cl
xor bl, al
mov byte [ebp - 0xe], ch
xor ah, al
mov byte [ebp - 0x11], dl
xor dh, al
mov byte [ebp - 0xf], ah
xor bh, al
mov byte [ebp - 0x10], bl
mov al, byte [ebp - 2]
mov ecx, edi
xor al, byte [ebp - 0x14]
mov byte [ebp - 0xb], al
lea eax, [ebp - 0x13]
push eax
mov byte [ebp - 0xd], dh
mov byte [ebp - 0xc], bh
call esi
mov ecx, eax
mov dword [0x1010759c], ecx
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
cmp dword [0x10107598], 0
jne 0x1003941d
mov eax, dword [0x10107740]
mov cl, 0x4b
mov edx, dword [eax + 0x1c]
mov eax, dword [edx]
mov dword [ebp - 0x18], 0x262e3f4b
mov dword [ebp - 0x14], 0x3e29643b
mov dword [ebp - 0x10], 0x392e2d2d
mov esi, dword [eax + 0x11c]
xor eax, eax
mov word [ebp - 0xc], 0x33
mov byte [ebp - 0xa], 0
xor byte [ebp + eax - 0x17], cl
inc eax
cmp eax, 0xc
jae 0x100393f7
mov cl, byte [ebp - 0x18]
jmp 0x100393e8
push 0
push 1
push str.Model_textures
lea eax, [ebp - 0x17]
mov word [ebp - 0xb], 0x100
push eax
mov ecx, edx
call esi
mov ecx, eax
mov dword [0x10107598], ecx
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
cmp dword [0x10107570], 0
jne 0x10039495
mov eax, dword [0x10107740]
mov cl, 0x3b
mov edx, dword [eax + 0x1c]
mov eax, dword [edx]
mov dword [ebp - 0x18], 0x565e4f3b
mov dword [ebp - 0x14], 0x4b48144b
mov dword [ebp - 0x10], 0x5a52585e
mov esi, dword [eax + 0x11c]
xor eax, eax
mov word [ebp - 0xc], 0x57
mov byte [ebp - 0xa], 0
nop dword [eax]
xor byte [ebp + eax - 0x17], cl
inc eax
cmp eax, 0xc
jae 0x1003946f
mov cl, byte [ebp - 0x18]
jmp 0x10039460
push 0
push 1
push str.Model_textures
lea eax, [ebp - 0x17]
mov word [ebp - 0xb], 0x100
push eax
mov ecx, edx
call esi
mov ecx, eax
mov dword [0x10107570], ecx
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
cmp dword [0x10107578], 0
jne 0x10039505
mov eax, dword [0x10107740]
mov cl, 0x52
mov edx, dword [eax + 0x1c]
mov eax, dword [edx]
mov dword [ebp - 0x18], 0x3f372652
mov dword [ebp - 0x14], 0x20357d22
mov dword [ebp - 0x10], 0x213e2b33
mov esi, dword [eax + 0x11c]
xor eax, eax
mov word [ebp - 0xc], 0
nop dword [eax]
xor byte [ebp + eax - 0x17], cl
inc eax
cmp eax, 0xb
jae 0x100394df
mov cl, byte [ebp - 0x18]
jmp 0x100394d0
push 0
push 1
push str.Model_textures
lea eax, [ebp - 0x17]
mov word [ebp - 0xc], 0x100
push eax
mov ecx, edx
call esi
mov ecx, eax
mov dword [0x10107578], ecx
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
cmp dword [0x10107574], 0
jne 0x10039576
mov eax, dword [0x10107740]
mov cl, 0x47
mov edx, dword [eax + 0x1c]
mov eax, dword [edx]
mov dword [ebp - 0x18], 0x2a223347
mov dword [ebp - 0x14], 0x35206837
mov dword [ebp - 0x10], 0x342b3e26
mov esi, dword [eax + 0x11c]
xor eax, eax
mov word [ebp - 0xc], 0x75
mov byte [ebp - 0xa], 0
xor byte [ebp + eax - 0x17], cl
inc eax
cmp eax, 0xc
jae 0x10039550
mov cl, byte [ebp - 0x18]
jmp 0x10039541
push 0
push 1
push str.Model_textures
lea eax, [ebp - 0x17]
mov word [ebp - 0xb], 0x100
push eax
mov ecx, edx
call esi
mov ecx, eax
mov dword [0x10107574], ecx
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
cmp dword [0x10107588], 0
jne 0x10039616
mov eax, dword [0x10107740]
mov cl, 0x5d
mov dh, cl
mov byte [ebp - 2], 0xa
push 0
mov byte [ebp - 1], 8
mov ch, 0x4a
mov edi, dword [eax + 0x1c]
mov dl, 0x55
push 1
mov bl, 0x48
mov bh, 0x5e
push str.Model_textures
mov eax, dword [edi]
mov byte [ebp - 0x14], 0x38
xor cl, byte [ebp - 0x14]
mov byte [ebp - 0x12], cl
mov esi, dword [eax + 0x11c]
mov al, 0x4c
xor al, byte [ebp - 0x14]
mov ah, 0x17
mov cl, byte [ebp - 0x14]
mov byte [ebp - 0x13], al
xor ah, cl
mov al, byte [ebp - 2]
xor ch, cl
xor al, cl
mov byte [ebp - 0xf], ah
mov byte [ebp - 0xb], al
xor dl, cl
mov al, byte [ebp - 1]
xor bl, cl
xor al, cl
mov byte [ebp - 0xe], ch
mov byte [ebp - 0xa], al
xor dh, cl
xor bh, cl
mov byte [ebp - 9], 0
lea eax, [ebp - 0x13]
mov byte [ebp - 0x11], dl
push eax
mov ecx, edi
mov byte [ebp - 0x10], bl
mov byte [ebp - 0xd], dh
mov byte [ebp - 0xc], bh
mov word [ebp - 9], 0x100
call esi
mov ecx, eax
mov dword [0x10107588], ecx
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
cmp dword [0x10107584], 0
jne 0x10039685
mov eax, dword [0x10107740]
mov cl, 0x68
mov edx, dword [eax + 0x1c]
mov eax, dword [edx]
mov dword [ebp - 0x18], 0x50d1c68
mov dword [ebp - 0x14], 0xd1a4718
mov dword [ebp - 0x10], 0x58585a0e
mov esi, dword [eax + 0x11c]
xor eax, eax
mov word [ebp - 0xc], 0
nop
xor byte [ebp + eax - 0x17], cl
inc eax
cmp eax, 0xb
jae 0x1003965f
mov cl, byte [ebp - 0x18]
jmp 0x10039650
push 0
push 1
push str.Model_textures
lea eax, [ebp - 0x17]
mov word [ebp - 0xc], 0x100
push eax
mov ecx, edx
call esi
mov ecx, eax
mov dword [0x10107584], ecx
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
cmp dword [0x10107580], 0
jne 0x100396f5
mov eax, dword [0x10107740]
mov cl, 6
mov edx, dword [eax + 0x1c]
mov eax, dword [edx]
mov dword [ebp - 0x18], 0x6b637206
mov dword [ebp - 0x14], 0x74612976
mov dword [ebp - 0x10], 0x756a7f67
mov esi, dword [eax + 0x11c]
xor eax, eax
mov dword [ebp - 0xc], 0x3434
nop
xor byte [ebp + eax - 0x17], cl
inc eax
cmp eax, 0xd
jae 0x100396cf
mov cl, byte [ebp - 0x18]
jmp 0x100396c0
push 0
push 1
push str.Model_textures
lea eax, [ebp - 0x17]
mov word [ebp - 0xa], 0x100
push eax
mov ecx, edx
call esi
mov ecx, eax
mov dword [0x10107580], ecx
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
cmp dword [0x1010757c], 0
jne 0x10039753
mov eax, dword [0x10107740]
xor ecx, ecx
movaps xmm0, xmmword [0x100ff900]
mov edx, dword [eax + 0x1c]
mov eax, dword [edx]
movups xmmword [ebp - 0x18], xmm0
mov byte [ebp - 8], 0
mov esi, dword [eax + 0x11c]
nop
mov al, byte [ebp - 0x18]
xor byte [ebp + ecx - 0x17], al
inc ecx
cmp ecx, 0xe
jb 0x10039720
push 0
push 1
push str.Model_textures
lea eax, [ebp - 0x17]
mov word [ebp - 9], 0x100
push eax
mov ecx, edx
call esi
mov ecx, eax
mov dword [0x1010757c], ecx
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
cmp dword [0x10107590], 0
jne 0x100397b3
mov eax, dword [0x10107740]
xor ecx, ecx
movaps xmm0, xmmword [str.T_19___05_18_]
mov edx, dword [eax + 0x1c]
mov eax, dword [edx]
movups xmmword [ebp - 0x18], xmm0
mov byte [ebp - 8], 0
mov esi, dword [eax + 0x11c]
nop dword [eax]
mov al, byte [ebp - 0x18]
xor byte [ebp + ecx - 0x17], al
inc ecx
cmp ecx, 0xe
jb 0x10039780
push 0
push 1
push str.Model_textures
lea eax, [ebp - 0x17]
mov word [ebp - 9], 0x100
push eax
mov ecx, edx
call esi
mov ecx, eax
mov dword [0x10107590], ecx
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
cmp dword [0x1010758c], 0
jne 0x10039813
mov eax, dword [0x10107740]
xor ecx, ecx
movaps xmm0, xmmword [str._Q_HU_nPUADQ_IV]
mov edx, dword [eax + 0x1c]
mov eax, dword [edx]
movups xmmword [ebp - 0x18], xmm0
mov byte [ebp - 8], 0
mov esi, dword [eax + 0x11c]
nop dword [eax]
mov al, byte [ebp - 0x18]
xor byte [ebp + ecx - 0x17], al
inc ecx
cmp ecx, 0xe
jb 0x100397e0
push 0
push 1
push str.Model_textures
lea eax, [ebp - 0x17]
mov word [ebp - 9], 0x100
push eax
mov ecx, edx
call esi
mov ecx, eax
mov dword [0x1010758c], ecx
mov eax, dword [ecx]
mov eax, dword [eax + 0x30]
call eax
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret