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

Disassembly:
push ebx
mov ebx, esp
sub esp, 8
and esp, 0xfffffff8
add esp, 4
push ebp
mov ebp, dword [ebx + 4]
mov dword [esp + 4], ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10197c0b
mov eax, dword fs:[0]
push eax
push ebx
sub esp, 0xd0
mov eax, dword [0x101f6e00]
xor eax, ebp
mov dword [ebp - 0x14], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov edi, ecx
mov dword [ebp - 0xb8], edi
mov dl, 0x45
mov dword [ebp - 0x44], 0x2b312745
mov dword [ebp - 0x40], 0x2a29261a
xor ecx, ecx
mov word [ebp - 0x3c], 0x2036
mov byte [ebp - 0x3a], 0
xor byte [ebp + ecx - 0x43], dl
inc ecx
cmp ecx, 9
jae 0x1006d024
mov dl, byte [ebp - 0x44]
jmp 0x1006d015
xorps xmm0, xmm0
mov byte [ebp - 0x3a], 0
lea ecx, [ebp - 0x43]
mov dword [ebp - 0x38], 0
movups xmmword [ebp - 0x34], xmm0
mov dword [ebp - 0x24], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x20], 0
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006d050
sub ecx, edx
lea eax, [ebp - 0x43]
push ecx
push eax
lea ecx, [ebp - 0x38]
call fcn.100484d0
mov esi, dword [edi]
mov dword [ebp - 4], 0
test esi, esi
je 0x1006d0b3
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1006d0b3
mov eax, dword [esi]
test eax, eax
je 0x1006d0b3
add eax, 0xff400000
cmp eax, 0x3fffff
ja 0x1006d0b3
push 0
lea eax, [ebp - 0x38]
mov ecx, esi
push eax
call dword [0x101d64b0]
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0xffffffff
mov esi, eax
call fcn.100477d0
jmp 0x1006d0c4
lea ecx, [ebp - 0x38]
mov dword [ebp - 4], 0xffffffff
call fcn.100477d0
xor esi, esi
mov eax, dword [ebp - 0x38]
push 8
push eax
mov dword [ebp - 0x38], 0
call fcn.1013c8d0
add esp, 8
mov dword [edi + 0x20c], esi
mov dl, 9
mov dword [ebp - 0x50], 0x677d6b09
mov dword [ebp - 0x4c], 0x686c7a56
xor ecx, ecx
mov dword [ebp - 0x48], 0x616a7b
xor byte [ebp + ecx - 0x4f], dl
inc ecx
cmp ecx, 0xa
jae 0x1006d107
mov dl, byte [ebp - 0x50]
jmp 0x1006d0f8
sub esp, 0x1c
mov byte [ebp - 0x45], 0
mov esi, esp
mov ecx, esi
call fcn.10048ce0
lea ecx, [ebp - 0x4f]
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006d120
sub ecx, edx
lea eax, [ebp - 0x4f]
push ecx
push eax
mov ecx, esi
call fcn.100484d0
push dword [edi]
call fcn.100e1620
movaps xmm0, xmmword [0x101dd9b0]
xor esi, esi
mov dword [edi + 0x210], eax
movups xmmword [ebp - 0x2c], xmm0
nop
push esi
lea ecx, [ebp - 0x2b]
call fcn.100564d0
mov cl, byte [ebp - 0x2c]
push esi
xor cl, byte [eax]
mov byte [ebp - 0x8d], cl
lea ecx, [ebp - 0x2b]
call fcn.100564d0
mov cl, byte [ebp - 0x8d]
inc esi
mov byte [eax], cl
cmp esi, 0xe
jb 0x1006d150
push 0xe
lea ecx, [ebp - 0x2b]
call fcn.100564d0
sub esp, 0x1c
mov ecx, esp
mov byte [eax], 0
lea eax, [ebp - 0x2b]
push eax
call fcn.10046c60
push dword [edi]
call fcn.100e1620
mov dword [edi + 0x214], eax
xor esi, esi
mov dword [ebp - 0x2c], 0x5558593c
mov dword [ebp - 0x28], 0x48556348
mov dword [ebp - 0x24], 0x5d525159
mov word [ebp - 0x20], 0x5951
mov byte [ebp - 0x1e], 0
push esi
lea ecx, [ebp - 0x2b]
call fcn.10056780
mov cl, byte [ebp - 0x2c]
push esi
xor cl, byte [eax]
mov byte [ebp - 0x8d], cl
lea ecx, [ebp - 0x2b]
call fcn.10056780
mov cl, byte [ebp - 0x8d]
inc esi
mov byte [eax], cl
cmp esi, 0xd
jb 0x1006d1c4
push 0xd
lea ecx, [ebp - 0x2b]
call fcn.10056780
sub esp, 0x1c
mov ecx, esp
mov byte [eax], 0
lea eax, [ebp - 0x2b]
push eax
call fcn.10046c60
push dword [edi]
call fcn.100e1620
mov dword [edi + 0x220], eax
xor esi, esi
mov dword [ebp - 0x2c], 0x4080470
mov dword [ebp - 0x28], 0x1504192f
mov dword [ebp - 0x24], 0x1d111e1d
mov word [ebp - 0x20], 0x15
push esi
lea ecx, [ebp - 0x2b]
call fcn.10061240
mov cl, byte [ebp - 0x2c]
push esi
xor cl, byte [eax]
mov byte [ebp - 0x8d], cl
lea ecx, [ebp - 0x2b]
call fcn.10061240
mov cl, byte [ebp - 0x8d]
inc esi
mov byte [eax], cl
cmp esi, 0xc
jb 0x1006d234
push 0xc
lea ecx, [ebp - 0x2b]
call fcn.10061240
sub esp, 0x1c
mov ecx, esp
mov byte [eax], 0
lea eax, [ebp - 0x2b]
push eax
call fcn.10046c60
push dword [edi]
call fcn.100e1620
mov dword [edi + 0x224], eax
xor esi, esi
mov dword [ebp - 0x2c], 0x213b2d4f
mov dword [ebp - 0x28], 0x2a3d3f10
mov dword [ebp - 0x24], 0x3a202639
mov word [ebp - 0x20], 0x3c
push esi
lea ecx, [ebp - 0x2b]
call fcn.10061240
mov cl, byte [ebp - 0x2c]
push esi
xor cl, byte [eax]
mov byte [ebp - 0x8d], cl
lea ecx, [ebp - 0x2b]
call fcn.10061240
mov cl, byte [ebp - 0x8d]
inc esi
mov byte [eax], cl
cmp esi, 0xc
jb 0x1006d2a4
push 0xc
lea ecx, [ebp - 0x2b]
call fcn.10061240
sub esp, 0x1c
mov ecx, esp
mov byte [eax], 0
lea eax, [ebp - 0x2b]
push eax
call fcn.10046c60
push dword [edi]
call fcn.100e1620
mov dword [edi + 0x218], eax
xor esi, esi
mov dword [ebp - 0x44], 0x69736507
mov dword [ebp - 0x40], 0x7f626958
mov word [ebp - 0x3c], 0x73
nop dword [eax]
push esi
lea ecx, [ebp - 0x43]
call fcn.1004c120
mov cl, byte [ebp - 0x44]
push esi
xor cl, byte [eax]
mov byte [ebp - 0x8d], cl
lea ecx, [ebp - 0x43]
call fcn.1004c120
mov cl, byte [ebp - 0x8d]
inc esi
mov byte [eax], cl
cmp esi, 8
jb 0x1006d310
push 8
lea ecx, [ebp - 0x43]
call fcn.1004c120
sub esp, 0x1c
mov ecx, esp
mov byte [eax], 0
lea eax, [ebp - 0x43]
push eax
call fcn.10046c60
push dword [edi]
call fcn.100e1620
mov dword [edi + 0x21c], eax
xor esi, esi
mov dword [ebp - 0x44], 0x2925295d
mov dword [ebp - 0x40], 0x3a3c2d02
mov word [ebp - 0x3c], 0x38
nop dword [eax]
push esi
lea ecx, [ebp - 0x43]
call fcn.1004c120
mov cl, byte [ebp - 0x44]
push esi
xor cl, byte [eax]
mov byte [ebp - 0x8d], cl
lea ecx, [ebp - 0x43]
call fcn.1004c120
mov cl, byte [ebp - 0x8d]
inc esi
mov byte [eax], cl
cmp esi, 8
jb 0x1006d380
push 8
lea ecx, [ebp - 0x43]
call fcn.1004c120
sub esp, 0x1c
mov ecx, esp
mov byte [eax], 0
lea eax, [ebp - 0x43]
push eax
call fcn.10046c60
push dword [edi]
call fcn.100e1620
mov dword [edi + 0x228], eax
xor edi, edi
nop word [eax + eax]
lea eax, [edi + 1]
mov dword [ebp - 0x58], 0x475f4230
mov dword [ebp - 0xb4], eax
mov dl, 0x30
push eax
mov dword [ebp - 0x54], 0x54156f
xor ecx, ecx
nop dword [eax]
xor byte [ebp + ecx - 0x57], dl
inc ecx
cmp ecx, 6
jae 0x1006d40f
mov dl, byte [ebp - 0x58]
jmp 0x1006d400
sub esp, 0x1c
mov byte [ebp - 0x51], 0
mov edx, esp
lea ecx, [ebp - 0x57]
xorps xmm0, xmm0
lea esi, [ecx + 1]
mov dword [edx], 0
movups xmmword [edx + 4], xmm0
mov dword [edx + 0x14], 0
mov dword [edx + 0x18], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006d440
sub ecx, esi
lea eax, [ebp - 0x57]
push ecx
push eax
mov ecx, edx
call fcn.100484d0
lea eax, [ebp - 0xb0]
push eax
call fcn.10052ec0
mov eax, dword [ebp - 0xb8]
add esp, 0x24
mov esi, dword [eax]
mov dword [ebp - 4], 1
test esi, esi
je 0x1006d4bd
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1006d4bd
mov eax, dword [esi]
test eax, eax
je 0x1006d4bd
add eax, 0xff400000
cmp eax, 0x3fffff
ja 0x1006d4bd
push 0
lea eax, [ebp - 0xb0]
mov ecx, esi
push eax
call dword [0x101d64b0]
lea ecx, [ebp - 0xb0]
mov dword [ebp - 4], 0xffffffff
mov esi, eax
call fcn.100477d0
jmp 0x1006d4d1
lea ecx, [ebp - 0xb0]
mov dword [ebp - 4], 0xffffffff
call fcn.100477d0
xor esi, esi
mov eax, dword [ebp - 0xb0]
push 8
push eax
mov dword [ebp - 0xb0], 0
call fcn.1013c8d0
mov ecx, dword [ebp - 0xb8]
lea eax, [edi + edi*8]
lea edi, [ecx + eax*4]
add esp, 8
mov dword [edi + 0x14], esi
mov dl, 0x3f
mov dword [ebp - 0x28], 0x4b474b3f
xor ecx, ecx
mov dword [ebp - 0x24], 0x535a4c60
mov dword [ebp - 0x20], 0x4d5a53
xor byte [ebp + ecx - 0x27], dl
inc ecx
cmp ecx, 0xa
jae 0x1006d523
mov dl, byte [ebp - 0x28]
jmp 0x1006d514
xorps xmm0, xmm0
mov byte [ebp - 0x1d], 0
lea ecx, [ebp - 0x27]
mov dword [ebp - 0xb0], 0
movups xmmword [ebp - 0xac], xmm0
mov dword [ebp - 0x9c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x98], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006d555
sub ecx, edx
lea eax, [ebp - 0x27]
push ecx
push eax
lea ecx, [ebp - 0xb0]
call fcn.100484d0
mov esi, dword [edi + 0x14]
mov dword [ebp - 4], 2
test esi, esi
je 0x1006d5c2
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1006d5c2
mov eax, dword [esi]
test eax, eax
je 0x1006d5c2
add eax, 0xff400000
cmp eax, 0x3fffff
ja 0x1006d5c2
push 0
lea eax, [ebp - 0xb0]
mov ecx, esi
push eax
call dword [0x101d64b0]
lea ecx, [ebp - 0xb0]
mov dword [ebp - 4], 0xffffffff
mov esi, eax
call fcn.100477d0
jmp 0x1006d5d6
lea ecx, [ebp - 0xb0]
mov dword [ebp - 4], 0xffffffff
call fcn.100477d0
xor esi, esi
mov eax, dword [ebp - 0xb0]
push 8
push eax
mov dword [ebp - 0xb0], 0
call fcn.1013c8d0
add esp, 8
mov dword [edi + 0x18], esi
mov dl, 0x50
mov dword [ebp - 0x74], 0x24282450
mov dword [ebp - 0x70], 0x3524390f
xor ecx, ecx
mov word [ebp - 0x6c], 0x3d
nop dword [eax]
xor byte [ebp + ecx - 0x73], dl
inc ecx
cmp ecx, 8
jae 0x1006d61f
mov dl, byte [ebp - 0x74]
jmp 0x1006d610
xorps xmm0, xmm0
mov byte [ebp - 0x6b], 0
lea ecx, [ebp - 0x73]
mov dword [ebp - 0xb0], 0
movups xmmword [ebp - 0xac], xmm0
mov dword [ebp - 0x9c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x98], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006d651
sub ecx, edx
lea eax, [ebp - 0x73]
push ecx
push eax
lea ecx, [ebp - 0xb0]
call fcn.100484d0
mov esi, dword [edi + 0x14]
mov dword [ebp - 4], 3
test esi, esi
je 0x1006d6be
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1006d6be
mov eax, dword [esi]
test eax, eax
je 0x1006d6be
add eax, 0xff400000
cmp eax, 0x3fffff
ja 0x1006d6be
push 0
lea eax, [ebp - 0xb0]
mov ecx, esi
push eax
call dword [0x101d64b0]
lea ecx, [ebp - 0xb0]
mov dword [ebp - 4], 0xffffffff
mov esi, eax
call fcn.100477d0
jmp 0x1006d6d2
lea ecx, [ebp - 0xb0]
mov dword [ebp - 4], 0xffffffff
call fcn.100477d0
xor esi, esi
mov eax, dword [ebp - 0xb0]
push 8
push eax
mov dword [ebp - 0xb0], 0
call fcn.1013c8d0
add esp, 8
mov dword [edi + 0x1c], esi
mov dl, 0x4e
mov dword [ebp - 0x80], 0x3a363a4e
mov dword [ebp - 0x7c], 0x2f3c2911
xor ecx, ecx
mov word [ebp - 0x78], 0x2b2a
mov byte [ebp - 0x76], 0
nop dword [eax]
xor byte [ebp + ecx - 0x7f], dl
inc ecx
cmp ecx, 9
jae 0x1006d71f
mov dl, byte [ebp - 0x80]
jmp 0x1006d710
xorps xmm0, xmm0
mov byte [ebp - 0x76], 0
lea ecx, [ebp - 0x7f]
mov dword [ebp - 0xb0], 0
movups xmmword [ebp - 0xac], xmm0
mov dword [ebp - 0x9c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x98], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006d751
sub ecx, edx
lea eax, [ebp - 0x7f]
push ecx
push eax
lea ecx, [ebp - 0xb0]
call fcn.100484d0
mov esi, dword [edi + 0x14]
mov dword [ebp - 4], 4
test esi, esi
je 0x1006d7be
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1006d7be
mov eax, dword [esi]
test eax, eax
je 0x1006d7be
add eax, 0xff400000
cmp eax, 0x3fffff
ja 0x1006d7be
push 0
lea eax, [ebp - 0xb0]
mov ecx, esi
push eax
call dword [0x101d64b0]
lea ecx, [ebp - 0xb0]
mov dword [ebp - 4], 0xffffffff
mov esi, eax
call fcn.100477d0
jmp 0x1006d7d2
lea ecx, [ebp - 0xb0]
mov dword [ebp - 4], 0xffffffff
call fcn.100477d0
xor esi, esi
mov eax, dword [ebp - 0xb0]
push 8
push eax
mov dword [ebp - 0xb0], 0
call fcn.1013c8d0
add esp, 8
mov dword [edi + 0x20], esi
mov dl, 0x27
mov dword [ebp - 0x44], 0x535f5327
mov dword [ebp - 0x40], 0x575e5378
xor ecx, ecx
mov word [ebp - 0x3c], 0x42
xor byte [ebp + ecx - 0x43], dl
inc ecx
cmp ecx, 8
jae 0x1006d817
mov dl, byte [ebp - 0x44]
jmp 0x1006d808
xorps xmm0, xmm0
mov byte [ebp - 0x3b], 0
lea ecx, [ebp - 0x43]
mov dword [ebp - 0xb0], 0
movups xmmword [ebp - 0xac], xmm0
mov dword [ebp - 0x9c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x98], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006d850
sub ecx, edx
lea eax, [ebp - 0x43]
push ecx
push eax
lea ecx, [ebp - 0xb0]
call fcn.100484d0
mov esi, dword [edi + 0x14]
mov dword [ebp - 4], 5
test esi, esi
je 0x1006d8bd
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1006d8bd
mov eax, dword [esi]
test eax, eax
je 0x1006d8bd
add eax, 0xff400000
cmp eax, 0x3fffff
ja 0x1006d8bd
push 0
lea eax, [ebp - 0xb0]
mov ecx, esi
push eax
call dword [0x101d64b0]
lea ecx, [ebp - 0xb0]
mov dword [ebp - 4], 0xffffffff
mov esi, eax
call fcn.100477d0
jmp 0x1006d8d1
lea ecx, [ebp - 0xb0]
mov dword [ebp - 4], 0xffffffff
call fcn.100477d0
xor esi, esi
mov eax, dword [ebp - 0xb0]
push 8
push eax
mov dword [ebp - 0xb0], 0
call fcn.1013c8d0
add esp, 8
mov dword [edi + 0x24], esi
mov dl, 0x56
mov dword [ebp - 0x8c], 0x222e2256
mov dword [ebp - 0x88], 0x23393509
xor ecx, ecx
mov word [ebp - 0x84], 0x2238
mov byte [ebp - 0x82], 0
nop word [eax + eax]
xor byte [ebp + ecx - 0x8b], dl
inc ecx
cmp ecx, 9
jae 0x1006d935
mov dl, byte [ebp - 0x8c]
jmp 0x1006d920
xorps xmm0, xmm0
mov byte [ebp - 0x82], 0
lea ecx, [ebp - 0x8b]
mov dword [ebp - 0xb0], 0
movups xmmword [ebp - 0xac], xmm0
mov dword [ebp - 0x9c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x98], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006d970
sub ecx, edx
lea eax, [ebp - 0x8b]
push ecx
push eax
lea ecx, [ebp - 0xb0]
call fcn.100484d0
mov esi, dword [edi + 0x14]
mov dword [ebp - 4], 6
test esi, esi
je 0x1006d9e0
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1006d9e0
mov eax, dword [esi]
test eax, eax
je 0x1006d9e0
add eax, 0xff400000
cmp eax, 0x3fffff
ja 0x1006d9e0
push 0
lea eax, [ebp - 0xb0]
mov ecx, esi
push eax
call dword [0x101d64b0]
lea ecx, [ebp - 0xb0]
mov dword [ebp - 4], 0xffffffff
mov esi, eax
call fcn.100477d0
jmp 0x1006d9f4
lea ecx, [ebp - 0xb0]
mov dword [ebp - 4], 0xffffffff
call fcn.100477d0
xor esi, esi
mov eax, dword [ebp - 0xb0]
push 8
push eax
mov dword [ebp - 0xb0], 0
call fcn.1013c8d0
add esp, 8
mov dword [edi + 0x28], esi
mov dl, 0x4c
mov dword [ebp - 0x50], 0x3834384c
mov dword [ebp - 0x4c], 0x253e3c13
xor ecx, ecx
mov word [ebp - 0x48], 0x292f
mov byte [ebp - 0x46], 0
nop
xor byte [ebp + ecx - 0x4f], dl
inc ecx
cmp ecx, 9
jae 0x1006da3f
mov dl, byte [ebp - 0x50]
jmp 0x1006da30
xorps xmm0, xmm0
mov byte [ebp - 0x46], 0
lea ecx, [ebp - 0x4f]
mov dword [ebp - 0xb0], 0
movups xmmword [ebp - 0xac], xmm0
mov dword [ebp - 0x9c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x98], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006da71
sub ecx, edx
lea eax, [ebp - 0x4f]
push ecx
push eax
lea ecx, [ebp - 0xb0]
call fcn.100484d0
mov esi, dword [edi + 0x14]
mov dword [ebp - 4], 7
test esi, esi
je 0x1006dade
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1006dade
mov eax, dword [esi]
test eax, eax
je 0x1006dade
add eax, 0xff400000
cmp eax, 0x3fffff
ja 0x1006dade
push 0
lea eax, [ebp - 0xb0]
mov ecx, esi
push eax
call dword [0x101d64b0]
lea ecx, [ebp - 0xb0]
mov dword [ebp - 4], 0xffffffff
mov esi, eax
call fcn.100477d0
jmp 0x1006daf2
lea ecx, [ebp - 0xb0]
mov dword [ebp - 4], 0xffffffff
call fcn.100477d0
xor esi, esi
mov eax, dword [ebp - 0xb0]
push 8
push eax
mov dword [ebp - 0xb0], 0
call fcn.1013c8d0
add esp, 8
mov dword [edi + 0x2c], esi
mov dl, 2
mov dword [ebp - 0x60], 0x6c766002
mov dword [ebp - 0x5c], 0x6d655d
xor ecx, ecx
xor byte [ebp + ecx - 0x5f], dl
inc ecx
cmp ecx, 6
jae 0x1006db31
mov dl, byte [ebp - 0x60]
jmp 0x1006db22
xorps xmm0, xmm0
mov byte [ebp - 0x59], 0
lea ecx, [ebp - 0x5f]
mov dword [ebp - 0xb0], 0
movups xmmword [ebp - 0xac], xmm0
mov dword [ebp - 0x9c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x98], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006db63
sub ecx, edx
lea eax, [ebp - 0x5f]
push ecx
push eax
lea ecx, [ebp - 0xb0]
call fcn.100484d0
mov esi, dword [edi + 0x14]
mov dword [ebp - 4], 8
test esi, esi
je 0x1006dbd0
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1006dbd0
mov eax, dword [esi]
test eax, eax
je 0x1006dbd0
add eax, 0xff400000
cmp eax, 0x3fffff
ja 0x1006dbd0
push 0
lea eax, [ebp - 0xb0]
mov ecx, esi
push eax
call dword [0x101d64b0]
lea ecx, [ebp - 0xb0]
mov dword [ebp - 4], 0xffffffff
mov esi, eax
call fcn.100477d0
jmp 0x1006dbe4
lea ecx, [ebp - 0xb0]
mov dword [ebp - 4], 0xffffffff
call fcn.100477d0
xor esi, esi
mov eax, dword [ebp - 0xb0]
push 8
push eax
mov dword [ebp - 0xb0], 0
call fcn.1013c8d0
add esp, 8
mov dword [edi + 0x30], esi
mov dl, 0x61
mov dword [ebp - 0x68], 0xf150361
mov dword [ebp - 0x64], 0xc113e
xor ecx, ecx
xor byte [ebp + ecx - 0x67], dl
inc ecx
cmp ecx, 6
jae 0x1006dc23
mov dl, byte [ebp - 0x68]
jmp 0x1006dc14
xorps xmm0, xmm0
mov byte [ebp - 0x61], 0
lea ecx, [ebp - 0x67]
mov dword [ebp - 0xb0], 0
movups xmmword [ebp - 0xac], xmm0
mov dword [ebp - 0x9c], 0
lea edx, [ecx + 1]
mov dword [ebp - 0x98], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1006dc55
sub ecx, edx
lea eax, [ebp - 0x67]
push ecx
push eax
lea ecx, [ebp - 0xb0]
call fcn.100484d0
mov esi, dword [edi + 0x14]
mov dword [ebp - 4], 9
test esi, esi
je 0x1006dcc2
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1006dcc2
mov eax, dword [esi]
test eax, eax
je 0x1006dcc2
add eax, 0xff400000
cmp eax, 0x3fffff
ja 0x1006dcc2
push 0
lea eax, [ebp - 0xb0]
mov ecx, esi
push eax
call dword [0x101d64b0]
lea ecx, [ebp - 0xb0]
mov dword [ebp - 4], 0xffffffff
mov esi, eax
call fcn.100477d0
jmp 0x1006dcd6
lea ecx, [ebp - 0xb0]
mov dword [ebp - 4], 0xffffffff
call fcn.100477d0
xor esi, esi
mov eax, dword [ebp - 0xb0]
push 8
push eax
mov dword [ebp - 0xb0], 0
call fcn.1013c8d0
mov dword [edi + 0x34], esi
add esp, 8
mov edi, dword [ebp - 0xb4]
cmp edi, 0xe
jl 0x1006d3e0
mov edi, dword [ebp - 0xb8]
lea esi, [ebp - 0x1f]
mov ecx, 1
mov dword [ebp - 0xb8], ecx
mov dword [edi + 0xc], 1
nop
mov eax, 0xcccccccd
dec esi
mul ecx
shr edx, 3
mov al, dl
shl al, 2
lea ecx, [eax + edx]
mov eax, dword [ebp - 0xb8]
add cl, cl
sub al, cl
mov ecx, edx
add al, 0x30
mov byte [esi], al
mov eax, edx
mov dword [ebp - 0xb8], eax
test eax, eax
jne 0x1006dd20
push ecx
lea eax, [ebp - 0x1f]
push eax
push esi
lea ecx, [ebp - 0xe0]
call fcn.1004f5b0
mov esi, dword [edi + 0x228]
mov dword [ebp - 4], 0xa
test esi, esi
je 0x1006dd8d
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1006dd8d
lea eax, [ebp - 0xe0]
mov ecx, esi
push eax
call dword [0x101d64a4]
lea ecx, [ebp - 0xe0]
mov dword [ebp - 4], 0xffffffff
call fcn.100477d0
mov eax, dword [ebp - 0xe0]
push 8
push eax
mov dword [ebp - 0xe0], 0
call fcn.1013c8d0
add esp, 8
mov ecx, edi
call fcn.1006ddf0
push dword [edi]
call fcn.100e10c0
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x14]
xor ecx, ebp
call fcn.1013c8c0
mov esp, ebp
pop ebp
mov esp, ebx
pop ebx
ret