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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1008f3cd
mov eax, dword fs:[0]
push eax
sub esp, 0x614
mov eax, dword [0x100bc570]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x604], 0
xor edx, edx
mov dword [ebp - 0x394], 0x54
mov byte [ebp - 0x390], 0x30
mov byte [ebp - 0x38f], 0x31
mov byte [ebp - 0x38e], 0x36
mov byte [ebp - 0x38d], 0x21
mov byte [ebp - 0x38c], 0x33
mov byte [ebp - 0x38b], 0x6e
mov byte [ebp - 0x38a], 0x6e
mov byte [ebp - 0x389], 0x35
mov byte [ebp - 0x388], 0x27
mov byte [ebp - 0x387], 0x3d
mov byte [ebp - 0x386], 0x30
mov byte [ebp - 0x385], 0x38
mov byte [ebp - 0x384], 0x38
mov byte [ebp - 0x383], 0x37
mov byte [ebp - 0x382], 0x3c
mov byte [ebp - 0x381], 0x31
mov byte [ebp - 0x380], 0x37
mov byte [ebp - 0x37f], 0x3f
mov al, byte [ebp - 0x390]
mov byte [ebp - 0x37e], 0
nop
mov al, byte [ebp + edx - 0x390]
mov ecx, dword [ebp - 0x394]
xor cl, al
mov byte [ebp + edx - 0x390], cl
inc edx
cmp edx, 0x12
jb 0x1003f180
lea eax, [ebp - 0x390]
mov byte [ebp - 0x37e], 0
push eax
call fcn.100407f0
add esp, 4
lea eax, [ebp - 0x214]
push 0x100
push eax
push 0
call dword [sym.imp.KERNEL32.dll_GetModuleFileNameA]
xorps xmm0, xmm0
mov dword [ebp - 0x4b4], 0
movups xmmword [ebp - 0x4c4], xmm0
mov dword [ebp - 0x4b0], 0xf
mov byte [ebp - 0x4c4], 0
mov dword [ebp - 0x37c], 0x3a
xor edx, edx
mov byte [ebp - 0x378], 0x5d
mov byte [ebp - 0x377], 0x4e
mov byte [ebp - 0x376], 0x5b
mov byte [ebp - 0x375], 0x65
mov byte [ebp - 0x374], 0x49
mov byte [ebp - 0x373], 0x5b
mov byte [ebp - 0x372], 0x14
mov byte [ebp - 0x371], 0x5f
mov byte [ebp - 0x370], 0x42
mov byte [ebp - 0x36f], 0x5f
mov al, byte [ebp - 0x378]
mov dword [ebp - 4], 0
mov byte [ebp - 0x36e], 0
mov al, byte [ebp + edx - 0x378]
mov ecx, dword [ebp - 0x37c]
xor cl, al
mov byte [ebp + edx - 0x378], cl
inc edx
cmp edx, 0xa
jb 0x1003f251
xorps xmm0, xmm0
mov byte [ebp - 0x36e], 0
lea ecx, [ebp - 0x378]
mov dword [ebp - 0x49c], 0
movups xmmword [ebp - 0x4ac], xmm0
mov dword [ebp - 0x498], 0
lea edx, [ecx + 1]
nop dword [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003f2a0
sub ecx, edx
lea eax, [ebp - 0x378]
push ecx
push eax
lea ecx, [ebp - 0x4ac]
call fcn.100049e0
lea eax, [ebp - 0x4c4]
mov byte [ebp - 4], 1
push eax
lea eax, [ebp - 0x4ac]
xorps xmm0, xmm0
push eax
sub esp, 0x18
lea ecx, [ebp - 0x214]
mov edx, esp
lea esi, [ecx + 1]
movups xmmword [edx], xmm0
mov dword [edx + 0x10], 0
mov dword [edx + 0x14], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003f2f0
sub ecx, esi
lea eax, [ebp - 0x214]
push ecx
push eax
mov ecx, edx
call fcn.100049e0
lea eax, [ebp - 0x574]
push eax
call fcn.10062860
add esp, 0x24
lea ecx, [ebp - 0x4ac]
call fcn.10004fc0
lea ecx, [ebp - 0x4c4]
call fcn.10004fc0
sub esp, 0x18
xorps xmm0, xmm0
mov ecx, esp
mov dword [ebp - 0x60c], esp
movups xmmword [ecx], xmm0
mov dword [ecx + 0x10], 1
mov dword [ecx + 0x14], 0xf
mov al, byte [0x1009199c]
mov byte [ecx], al
mov byte [ecx + 1], 0
sub esp, 0x18
mov byte [ebp - 4], 5
mov ecx, esp
push 0x100bc08c
call fcn.10004df0
lea eax, [ebp - 0x61c]
mov byte [ebp - 4], 4
push eax
call fcn.100624a0
add esp, 0x34
lea eax, [ebp - 0x574]
mov byte [ebp - 4], 6
push eax
lea ecx, [ebp - 0x58c]
call fcn.10035110
push 0
lea eax, [ebp - 0x58c]
mov byte [ebp - 4], 7
push eax
lea ecx, [ebp - 0x5c4]
call fcn.10037cc0
lea ecx, [ebp - 0x58c]
mov byte [ebp - 4], 9
call fcn.100109c0
lea eax, [ebp - 0x5c4]
push eax
lea ecx, [ebp - 0x55c]
call fcn.10037c20
lea eax, [ebp - 0x5c4]
push eax
lea eax, [ebp - 0x5fc]
push eax
call fcn.1004d270
add esp, 8
mov esi, dword [ebp - 0x604]
mov byte [ebp - 4], 0xb
mov dword [ebp - 0x600], esi
mov eax, dword [ebp - 0x5fc]
mov ecx, dword [eax]
mov eax, dword [ebp - 0x55c]
mov ecx, dword [ecx + 8]
mov eax, dword [eax]
mov eax, dword [eax + 8]
test eax, eax
je 0x1003f416
test ecx, ecx
je 0x1003f41e
mov eax, dword [eax]
cmp eax, dword [ecx]
jmp 0x1003f418
test ecx, ecx
je 0x10040524
cmp dword [ebp - 0x540], 8
lea ecx, [ebp - 0x620]
lea eax, [ebp - 0x554]
cmovae eax, dword [ebp - 0x554]
push ecx
push eax
call fcn.1006455d
add esp, 8
cmp eax, 1
jne 0x1003f7d1
mov byte [ebp - 0x340], 0x36
xor ecx, ecx
mov byte [ebp - 0x33f], 0x69
mov byte [ebp - 0x33e], 0x7b
mov byte [ebp - 0x33d], 0x71
mov byte [ebp - 0x33c], 0
mov al, byte [ebp - 0x340]
nop word [eax + eax]
mov al, byte [ebp + ecx - 0x340]
sub al, 8
mov byte [ebp + ecx - 0x340], al
inc ecx
cmp ecx, 4
jb 0x1003f480
lea eax, [ebp - 0x340]
push eax
lea ecx, [ebp - 0x464]
call fcn.10035300
mov esi, dword [ebp - 0x604]
lea eax, [ebp - 0x524]
or esi, 1
mov byte [ebp - 4], 0xc
push eax
lea ecx, [ebp - 0x554]
mov dword [ebp - 0x604], esi
call fcn.1004d370
mov edx, dword [eax + 0x10]
lea ecx, [ebp - 0x464]
or esi, 2
mov dword [ebp - 4], 0xd
cmp dword [ebp - 0x450], 8
mov dword [ebp - 0x600], esi
cmovae ecx, dword [ebp - 0x464]
cmp dword [eax + 0x14], 8
mov dword [ebp - 0x604], esi
jb 0x1003f502
mov eax, dword [eax]
cmp edx, dword [ebp - 0x454]
jne 0x1003f51d
push edx
push ecx
push eax
call fcn.1004cfc0
add esp, 0xc
test eax, eax
je 0x1003f7c8
mov dword [ebp - 0x360], 0x55
xor edx, edx
mov byte [ebp - 0x35c], 0x7b
mov byte [ebp - 0x35b], 0x14
mov byte [ebp - 0x35a], 6
mov byte [ebp - 0x359], 0x1c
mov al, byte [ebp - 0x35c]
mov byte [ebp - 0x358], 0
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + edx - 0x35c]
mov ecx, dword [ebp - 0x360]
xor cl, al
mov byte [ebp + edx - 0x35c], cl
inc edx
cmp edx, 4
jb 0x1003f560
lea eax, [ebp - 0x35c]
mov byte [ebp - 0x358], 0
push eax
lea ecx, [ebp - 0x44c]
call fcn.10035300
mov esi, dword [ebp - 0x604]
lea eax, [ebp - 0x50c]
or esi, 4
mov dword [ebp - 4], 0xe
push eax
lea ecx, [ebp - 0x554]
mov dword [ebp - 0x604], esi
call fcn.1004d370
mov edx, dword [eax + 0x10]
lea ecx, [ebp - 0x44c]
or esi, 8
mov dword [ebp - 4], 0xf
cmp dword [ebp - 0x438], 8
mov dword [ebp - 0x600], esi
cmovae ecx, dword [ebp - 0x44c]
cmp dword [eax + 0x14], 8
mov dword [ebp - 0x604], esi
jb 0x1003f5f2
mov eax, dword [eax]
cmp edx, dword [ebp - 0x43c]
jne 0x1003f60d
push edx
push ecx
push eax
call fcn.1004cfc0
add esp, 0xc
test eax, eax
je 0x1003f7c8
mov dword [ebp - 0x36c], 1
xor edx, edx
mov byte [ebp - 0x368], 0x2f
mov byte [ebp - 0x367], 0x65
mov byte [ebp - 0x366], 0x6d
mov byte [ebp - 0x365], 0x6d
mov al, byte [ebp - 0x368]
mov byte [ebp - 0x364], 0
nop dword [eax]
nop word [eax + eax]
mov al, byte [ebp + edx - 0x368]
mov ecx, dword [ebp - 0x36c]
xor cl, al
mov byte [ebp + edx - 0x368], cl
inc edx
cmp edx, 4
jb 0x1003f650
lea eax, [ebp - 0x368]
mov byte [ebp - 0x364], 0
push eax
lea ecx, [ebp - 0x434]
call fcn.10035300
mov esi, dword [ebp - 0x604]
lea eax, [ebp - 0x4f4]
or esi, 0x10
mov dword [ebp - 4], 0x10
push eax
lea ecx, [ebp - 0x554]
mov dword [ebp - 0x604], esi
call fcn.1004d370
mov edx, dword [eax + 0x10]
lea ecx, [ebp - 0x434]
or esi, 0x20
mov dword [ebp - 4], 0x11
cmp dword [ebp - 0x420], 8
mov dword [ebp - 0x600], esi
cmovae ecx, dword [ebp - 0x434]
cmp dword [eax + 0x14], 8
mov dword [ebp - 0x604], esi
jb 0x1003f6e2
mov eax, dword [eax]
cmp edx, dword [ebp - 0x424]
jne 0x1003f6fd
push edx
push ecx
push eax
call fcn.1004cfc0
add esp, 0xc
test eax, eax
je 0x1003f7c8
mov byte [ebp - 0x348], 0x2f
xor ecx, ecx
mov byte [ebp - 0x347], 0x45
mov byte [ebp - 0x346], 0x4d
mov byte [ebp - 0x345], 0x4d
mov byte [ebp - 0x344], 0
mov al, byte [ebp - 0x348]
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x348]
dec al
mov byte [ebp + ecx - 0x348], al
inc ecx
cmp ecx, 4
jb 0x1003f730
lea eax, [ebp - 0x348]
push eax
lea ecx, [ebp - 0x41c]
call fcn.10035300
mov esi, dword [ebp - 0x604]
lea eax, [ebp - 0x4dc]
or esi, 0x40
mov dword [ebp - 4], 0x12
push eax
lea ecx, [ebp - 0x554]
mov dword [ebp - 0x604], esi
call fcn.1004d370
or esi, 0x80
lea ecx, [ebp - 0x41c]
cmp dword [ebp - 0x408], 8
mov dword [ebp - 0x600], esi
cmovae ecx, dword [ebp - 0x41c]
cmp dword [eax + 0x14], 8
mov edx, dword [eax + 0x10]
mov dword [ebp - 0x604], esi
jb 0x1003f7b1
mov eax, dword [eax]
cmp edx, dword [ebp - 0x40c]
jne 0x1003f7d1
push edx
push ecx
push eax
call fcn.1004cfc0
add esp, 0xc
test eax, eax
jne 0x1003f7d1
mov byte [ebp - 0x605], 0
jmp 0x1003f7d8
mov byte [ebp - 0x605], 1
mov eax, dword [ebp - 0x600]
test al, al
jns 0x1003f856
mov ecx, dword [ebp - 0x4c8]
and eax, 0xffffff7f
mov dword [ebp - 0x600], eax
mov dword [ebp - 0x604], eax
cmp ecx, 8
jb 0x1003f839
mov edx, dword [ebp - 0x4dc]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1003f829
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100405b0
push ecx
push edx
call fcn.10064ac2
mov eax, dword [ebp - 0x600]
add esp, 8
xor ecx, ecx
mov dword [ebp - 0x4cc], 0
mov dword [ebp - 0x4c8], 7
mov word [ebp - 0x4dc], cx
mov dword [ebp - 4], 0x11
test al, 0x40
je 0x1003f8d3
mov ecx, dword [ebp - 0x408]
and eax, 0xffffffbf
mov dword [ebp - 0x600], eax
mov dword [ebp - 0x604], eax
cmp ecx, 8
jb 0x1003f8b6
mov edx, dword [ebp - 0x41c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1003f8a6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100405b0
push ecx
push edx
call fcn.10064ac2
mov eax, dword [ebp - 0x600]
add esp, 8
xor ecx, ecx
mov dword [ebp - 0x40c], 0
mov dword [ebp - 0x408], 7
mov word [ebp - 0x41c], cx
mov dword [ebp - 4], 0x10
test al, 0x20
je 0x1003f950
mov ecx, dword [ebp - 0x4e0]
and eax, 0xffffffdf
mov dword [ebp - 0x600], eax
mov dword [ebp - 0x604], eax
cmp ecx, 8
jb 0x1003f933
mov edx, dword [ebp - 0x4f4]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1003f923
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100405b0
push ecx
push edx
call fcn.10064ac2
mov eax, dword [ebp - 0x600]
add esp, 8
xor ecx, ecx
mov dword [ebp - 0x4e4], 0
mov dword [ebp - 0x4e0], 7
mov word [ebp - 0x4f4], cx
mov dword [ebp - 4], 0xf
test al, 0x10
je 0x1003f9cd
mov ecx, dword [ebp - 0x420]
and eax, 0xffffffef
mov dword [ebp - 0x600], eax
mov dword [ebp - 0x604], eax
cmp ecx, 8
jb 0x1003f9b0
mov edx, dword [ebp - 0x434]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1003f9a0
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100405b0
push ecx
push edx
call fcn.10064ac2
mov eax, dword [ebp - 0x600]
add esp, 8
xor ecx, ecx
mov dword [ebp - 0x424], 0
mov dword [ebp - 0x420], 7
mov word [ebp - 0x434], cx
mov dword [ebp - 4], 0xe
test al, 8
je 0x1003fa4a
mov ecx, dword [ebp - 0x4f8]
and eax, 0xfffffff7
mov dword [ebp - 0x600], eax
mov dword [ebp - 0x604], eax
cmp ecx, 8
jb 0x1003fa2d
mov edx, dword [ebp - 0x50c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1003fa1d
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100405b0
push ecx
push edx
call fcn.10064ac2
mov eax, dword [ebp - 0x600]
add esp, 8
xor ecx, ecx
mov dword [ebp - 0x4fc], 0
mov dword [ebp - 0x4f8], 7
mov word [ebp - 0x50c], cx
mov dword [ebp - 4], 0xd
test al, 4
je 0x1003fac7
mov ecx, dword [ebp - 0x438]
and eax, 0xfffffffb
mov dword [ebp - 0x600], eax
mov dword [ebp - 0x604], eax
cmp ecx, 8
jb 0x1003faaa
mov edx, dword [ebp - 0x44c]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1003fa9a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100405b0
push ecx
push edx
call fcn.10064ac2
mov eax, dword [ebp - 0x600]
add esp, 8
xor ecx, ecx
mov dword [ebp - 0x43c], 0
mov dword [ebp - 0x438], 7
mov word [ebp - 0x44c], cx
mov dword [ebp - 4], 0xc
test al, 2
je 0x1003fb44
mov ecx, dword [ebp - 0x510]
and eax, 0xfffffffd
mov dword [ebp - 0x600], eax
mov dword [ebp - 0x604], eax
cmp ecx, 8
jb 0x1003fb27
mov edx, dword [ebp - 0x524]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1003fb17
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100405b0
push ecx
push edx
call fcn.10064ac2
mov eax, dword [ebp - 0x600]
add esp, 8
xor ecx, ecx
mov dword [ebp - 0x514], 0
mov dword [ebp - 0x510], 7
mov word [ebp - 0x524], cx
mov dword [ebp - 4], 0xb
test al, 1
je 0x1003fbbb
mov ecx, dword [ebp - 0x450]
and eax, 0xfffffffe
mov dword [ebp - 0x600], eax
mov dword [ebp - 0x604], eax
cmp ecx, 8
jb 0x1003fb9e
mov edx, dword [ebp - 0x464]
lea ecx, [ecx*2 + 2]
mov eax, edx
cmp ecx, 0x1000
jb 0x1003fb94
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100405b0
push ecx
push edx
call fcn.10064ac2
add esp, 8
xor eax, eax
mov dword [ebp - 0x454], 0
mov dword [ebp - 0x450], 7
mov word [ebp - 0x464], ax
cmp byte [ebp - 0x605], 0
jne 0x10040514
xorps xmm0, xmm0
mov dword [ebp - 0x46c], 0
movups xmmword [ebp - 0x47c], xmm0
mov dword [ebp - 0x468], 0xf
mov byte [ebp - 0x47c], 0
cmp dword [ebp - 0x540], 8
lea ecx, [ebp - 0x114]
lea eax, [ebp - 0x554]
mov byte [ebp - 4], 0x13
cmovae eax, dword [ebp - 0x554]
push ecx
push eax
call fcn.100645ed
add esp, 8
test eax, eax
je 0x100405a6
lea ecx, [ebp - 0x114]
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003fc26
sub ecx, edx
lea eax, [ebp - 0x114]
push ecx
push eax
lea ecx, [ebp - 0x47c]
call fcn.1001f500
mov dword [ebp - 0x3c4], 0
xorps xmm0, xmm0
movups xmmword [ebp - 0x3d4], xmm0
mov dword [ebp - 0x3c0], 0
movups xmm0, xmmword [eax]
movups xmmword [ebp - 0x3d4], xmm0
movq xmm0, qword [eax + 0x10]
movq qword [ebp - 0x3c4], xmm0
mov dword [eax + 0x10], 0
mov dword [eax + 0x14], 0xf
mov byte [eax], 0
mov esi, dword [ebp - 0x600]
mov ecx, dword [ebp - 0x468]
or esi, 0x100
mov dword [ebp - 0x604], esi
mov byte [ebp - 4], 0xb
cmp ecx, 0x10
jb 0x1003fcd8
mov edx, dword [ebp - 0x47c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1003fcce
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100405b0
push ecx
push edx
call fcn.10064ac2
add esp, 8
mov dword [ebp - 0x46c], 0
mov dword [ebp - 0x468], 0xf
mov byte [ebp - 0x47c], 0
xorps xmm0, xmm0
mov dword [ebp - 0x3dc], 0
movups xmmword [ebp - 0x3ec], xmm0
mov dword [ebp - 0x3d8], 0xf
mov byte [ebp - 0x3ec], 0
lea eax, [ebp - 0x3ec]
mov byte [ebp - 4], 0x15
push eax
lea eax, [ebp - 0x574]
push eax
sub esp, 0x18
lea ecx, [ebp - 0x3d4]
mov esi, esp
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
cmp dword [ebp - 0x3c0], 0x10
mov eax, dword [ebp - 0x3c4]
cmovae ecx, dword [ebp - 0x3d4]
mov dword [ebp - 0x600], eax
mov dword [ebp - 0x60c], ecx
cmp eax, 0x7fffffff
ja 0x100405a1
mov dword [esi + 0x14], 0xf
cmp eax, 0x10
jae 0x1003fd88
mov dword [esi + 0x10], eax
movups xmm0, xmmword [ecx]
movups xmmword [esi], xmm0
jmp 0x1003fdd1
mov edi, eax
or edi, 0xf
cmp edi, 0x7fffffff
jbe 0x1003fd9c
mov edi, 0x7fffffff
jmp 0x1003fda7
cmp edi, 0x16
mov eax, 0x16
cmovb edi, eax
lea eax, [edi + 1]
mov ecx, esi
push eax
call fcn.100053f0
mov ecx, dword [ebp - 0x600]
mov dword [esi + 0x10], ecx
inc ecx
push ecx
push dword [ebp - 0x60c]
mov dword [esi], eax
push eax
mov dword [esi + 0x14], edi
call fcn.10065e70
add esp, 0xc
lea eax, [ebp - 0x404]
push eax
call fcn.10062860
add esp, 0x24
mov ecx, dword [ebp - 0x3d8]
mov byte [ebp - 4], 0x17
cmp ecx, 0x10
jb 0x1003fe1e
mov edx, dword [ebp - 0x3ec]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1003fe14
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100405b0
push ecx
push edx
call fcn.10064ac2
add esp, 8
cmp dword [ebp - 0x3c0], 0x10
lea esi, [ebp - 0x3d4]
mov dword [ebp - 0x3dc], 0
cmovae esi, dword [ebp - 0x3d4]
mov dword [ebp - 0x3d8], 0xf
mov byte [ebp - 0x3ec], 0
mov dword [ebp - 0x338], 0x1c
mov eax, dword [ebp - 0x338]
xor al, 0x64
mov byte [ebp - 0x334], al
mov eax, dword [ebp - 0x338]
inc al
xor al, 0x65
mov byte [ebp - 0x333], al
mov eax, dword [ebp - 0x338]
add al, 2
xor al, 0x62
mov byte [ebp - 0x332], al
mov eax, dword [ebp - 0x338]
add al, 3
xor al, 0x75
mov byte [ebp - 0x331], al
mov eax, dword [ebp - 0x338]
add al, 4
xor al, 0x67
mov byte [ebp - 0x330], al
mov eax, dword [ebp - 0x338]
add al, 5
xor al, 0x3a
mov byte [ebp - 0x32f], al
mov eax, dword [ebp - 0x338]
add al, 6
xor al, 0x3a
mov byte [ebp - 0x32e], al
mov eax, dword [ebp - 0x338]
add al, 7
xor al, 0x61
mov byte [ebp - 0x32d], al
mov eax, dword [ebp - 0x338]
add al, 8
xor al, 0x73
mov byte [ebp - 0x32c], al
mov eax, dword [ebp - 0x338]
add al, 9
xor al, 0x69
mov byte [ebp - 0x32b], al
mov eax, dword [ebp - 0x338]
add al, 0xa
xor al, 0x64
mov byte [ebp - 0x32a], al
mov eax, dword [ebp - 0x338]
add al, 0xb
xor al, 0x6c
mov byte [ebp - 0x329], al
mov eax, dword [ebp - 0x338]
add al, 0xc
xor al, 0x6c
mov byte [ebp - 0x328], al
mov eax, dword [ebp - 0x338]
add al, 0xd
xor al, 0x63
mov byte [ebp - 0x327], al
mov eax, dword [ebp - 0x338]
add al, 0xe
xor al, 0x68
mov byte [ebp - 0x326], al
mov eax, dword [ebp - 0x338]
add al, 0xf
xor al, 0x65
mov byte [ebp - 0x325], al
mov eax, dword [ebp - 0x338]
add al, 0x10
xor al, 0x63
mov byte [ebp - 0x324], al
mov eax, dword [ebp - 0x338]
add al, 0x11
xor al, 0x6b
mov byte [ebp - 0x323], al
mov eax, dword [ebp - 0x338]
add al, 0x12
xor al, 0x3a
mov byte [ebp - 0x322], al
mov eax, dword [ebp - 0x338]
add al, 0x13
xor al, 0x3a
mov byte [ebp - 0x321], al
mov eax, dword [ebp - 0x338]
add al, 0x14
xor al, 0x66
mov byte [ebp - 0x320], al
mov eax, dword [ebp - 0x338]
add al, 0x15
xor al, 0x69
mov byte [ebp - 0x31f], al
mov eax, dword [ebp - 0x338]
add al, 0x16
xor al, 0x6c
mov byte [ebp - 0x31e], al
mov eax, dword [ebp - 0x338]
add al, 0x17
xor al, 0x65
mov byte [ebp - 0x31d], al
mov eax, dword [ebp - 0x338]
add al, 0x18
xor al, 0x3a
mov byte [ebp - 0x31c], al
mov eax, dword [ebp - 0x338]
add al, 0x19
xor al, 0x3a
mov byte [ebp - 0x31b], al
mov eax, dword [ebp - 0x338]
add al, 0x1a
xor al, 0x25
mov byte [ebp - 0x31a], al
mov eax, dword [ebp - 0x338]
add al, 0x1b
mov byte [ebp - 0x318], 0
xor al, 0x73
xor edx, edx
mov byte [ebp - 0x319], al
mov al, byte [ebp - 0x334]
nop dword [eax]
nop dword [eax + eax]
mov al, byte [ebp + edx - 0x334]
mov ecx, dword [ebp - 0x338]
add cl, dl
xor cl, al
mov byte [ebp + edx - 0x334], cl
inc edx
cmp edx, 0x1c
jb 0x10040030
lea eax, [ebp - 0x334]
mov byte [ebp - 0x318], 0
push esi
push eax
call fcn.100407f0
cmp dword [ebp - 0x3c0], 0x10
lea ecx, [ebp - 0x610]
lea eax, [ebp - 0x3d4]
cmovae eax, dword [ebp - 0x3d4]
push ecx
push eax
call fcn.10060040
add esp, 0x10
test al, al
je 0x10040442
cmp dword [ebp - 0x3c0], 0x10
lea edx, [ebp - 0x3d4]
cmovae edx, dword [ebp - 0x3d4]
xor ecx, ecx
mov byte [ebp - 0x3bc], 0x6e
mov byte [ebp - 0x3bb], 0x6f
mov byte [ebp - 0x3ba], 0x6c
mov byte [ebp - 0x3b9], 0x7f
mov byte [ebp - 0x3b8], 0x71
mov byte [ebp - 0x3b7], 0x44
mov byte [ebp - 0x3b6], 0x44
mov byte [ebp - 0x3b5], 0x6b
mov byte [ebp - 0x3b4], 0x7d
mov byte [ebp - 0x3b3], 0x73
mov byte [ebp - 0x3b2], 0x6e
mov byte [ebp - 0x3b1], 0x76
mov byte [ebp - 0x3b0], 0x76
mov byte [ebp - 0x3af], 0x6d
mov byte [ebp - 0x3ae], 0x72
mov byte [ebp - 0x3ad], 0x6f
mov byte [ebp - 0x3ac], 0x6d
mov byte [ebp - 0x3ab], 0x75
mov byte [ebp - 0x3aa], 0x44
mov byte [ebp - 0x3a9], 0x44
mov byte [ebp - 0x3a8], 0x70
mov byte [ebp - 0x3a7], 0x73
mov byte [ebp - 0x3a6], 0x76
mov byte [ebp - 0x3a5], 0x6f
mov byte [ebp - 0x3a4], 0x44
mov byte [ebp - 0x3a3], 0x44
mov byte [ebp - 0x3a2], 0x2f
mov byte [ebp - 0x3a1], 0x7d
mov byte [ebp - 0x3a0], 0x44
mov byte [ebp - 0x39f], 0x44
mov byte [ebp - 0x39e], 0x6d
mov byte [ebp - 0x39d], 0x7c
mov byte [ebp - 0x39c], 0x6d
mov byte [ebp - 0x39b], 0x44
mov byte [ebp - 0x39a], 0x44
mov byte [ebp - 0x399], 0x2f
mov byte [ebp - 0x398], 0x82
mov byte [ebp - 0x397], 0
mov al, byte [ebp - 0x3bc]
nop dword [eax]
nop dword [eax + eax]
mov al, byte [ebp + ecx - 0x3bc]
sub al, 0xa
mov byte [ebp + ecx - 0x3bc], al
inc ecx
cmp ecx, 0x25
jb 0x100401c0
push dword [ebp - 0x610]
lea eax, [ebp - 0x3bc]
push edx
push eax
call fcn.100407f0
sub esp, 0xc
lea ecx, [ebp - 0x3d4]
mov esi, esp
xorps xmm0, xmm0
movups xmmword [esi], xmm0
mov dword [esi + 0x10], 0
mov dword [esi + 0x14], 0
cmp dword [ebp - 0x3c0], 0x10
mov eax, dword [ebp - 0x3c4]
cmovae ecx, dword [ebp - 0x3d4]
mov dword [ebp - 0x60c], eax
mov dword [ebp - 0x600], ecx
cmp eax, 0x7fffffff
ja 0x100405a1
mov dword [esi + 0x14], 0xf
cmp eax, 0x10
jae 0x1004024a
mov dword [esi + 0x10], eax
movups xmm0, xmmword [ecx]
movups xmmword [esi], xmm0
jmp 0x10040293
mov edi, eax
or edi, 0xf
cmp edi, 0x7fffffff
jbe 0x1004025e
mov edi, 0x7fffffff
jmp 0x10040269
cmp edi, 0x16
mov eax, 0x16
cmovb edi, eax
lea eax, [edi + 1]
mov ecx, esi
push eax
call fcn.100053f0
mov ecx, dword [ebp - 0x60c]
mov dword [esi + 0x10], ecx
inc ecx
push ecx
push dword [ebp - 0x600]
mov dword [esi], eax
push eax
mov dword [esi + 0x14], edi
call fcn.10065e70
add esp, 0xc
lea eax, [ebp - 0x494]
push eax
call fcn.10062000
add esp, 0x1c
cmp dword [ebp - 0x480], 0x10
lea esi, [ebp - 0x494]
mov byte [ebp - 4], 0x18
cmovae esi, dword [ebp - 0x494]
mov dword [ebp - 0x354], 0x37
mov eax, dword [ebp - 0x354]
xor al, 0x25
mov byte [ebp - 0x350], al
mov eax, dword [ebp - 0x354]
inc al
xor al, 0x78
mov byte [ebp - 0x34f], al
mov eax, dword [ebp - 0x354]
add al, 2
xor al, 0x2c
mov byte [ebp - 0x34e], al
mov eax, dword [ebp - 0x354]
add al, 3
xor al, 0x25
mov byte [ebp - 0x34d], al
mov eax, dword [ebp - 0x354]
add al, 4
mov byte [ebp - 0x34b], 0
xor al, 0x73
xor edx, edx
mov byte [ebp - 0x34c], al
mov al, byte [ebp - 0x350]
mov al, byte [ebp + edx - 0x350]
mov ecx, dword [ebp - 0x354]
add cl, dl
xor cl, al
mov byte [ebp + edx - 0x350], cl
inc edx
cmp edx, 5
jb 0x10040321
push esi
push dword [ebp - 0x610]
lea eax, [ebp - 0x350]
mov byte [ebp - 0x34b], 0
push eax
lea eax, [ebp - 0x314]
push 0x100
push eax
call fcn.100228e0
mov esi, dword [ebp - 0x61c]
add esp, 0x14
mov edi, dword [ebp - 0x618]
cmp esi, edi
je 0x100403b8
cmp dword [esi + 0x14], 0x10
mov eax, esi
jb 0x10040382
mov eax, dword [esi]
lea ecx, [ebp - 0x314]
mov dl, byte [eax]
cmp dl, byte [ecx]
jne 0x100403a8
test dl, dl
je 0x100403a4
mov dl, byte [eax + 1]
cmp dl, byte [ecx + 1]
jne 0x100403a8
add eax, 2
add ecx, 2
test dl, dl
jne 0x10040388
xor eax, eax
jmp 0x100403ad
sbb eax, eax
or eax, 1
test eax, eax
je 0x100403e7
add esi, 0x18
cmp esi, edi
jne 0x10040378
mov eax, dword [0x101942e0]
lea ecx, [ebp - 0x404]
push ecx
cmp eax, dword [0x101942e4]
je 0x100403dc
mov ecx, eax
call fcn.10004df0
add dword [0x101942e0], 0x18
jmp 0x100403e7
push eax
mov ecx, 0x101942dc
call fcn.1000ce90
mov ecx, dword [ebp - 0x480]
mov byte [ebp - 4], 0x17
cmp ecx, 0x10
jb 0x10040425
mov edx, dword [ebp - 0x494]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1004041b
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100405b0
push ecx
push edx
call fcn.10064ac2
add esp, 8
mov dword [ebp - 0x484], 0
mov dword [ebp - 0x480], 0xf
mov byte [ebp - 0x494], 0
jmp 0x10040471
mov eax, dword [0x101942e0]
lea ecx, [ebp - 0x404]
push ecx
cmp eax, dword [0x101942e4]
je 0x10040466
mov ecx, eax
call fcn.10004df0
add dword [0x101942e0], 0x18
jmp 0x10040471
push eax
mov ecx, 0x101942dc
call fcn.1000ce90
mov ecx, dword [ebp - 0x3f0]
mov byte [ebp - 4], 0x14
cmp ecx, 0x10
jb 0x100404af
mov edx, dword [ebp - 0x404]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100404a5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100405b0
push ecx
push edx
call fcn.10064ac2
add esp, 8
mov ecx, dword [ebp - 0x3c0]
mov dword [ebp - 0x3f4], 0
mov dword [ebp - 0x3f0], 0xf
mov byte [ebp - 0x404], 0
mov byte [ebp - 4], 0xb
cmp ecx, 0x10
jb 0x10040508
mov edx, dword [ebp - 0x3d4]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100404fe
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100405b0
push ecx
push edx
call fcn.10064ac2
add esp, 8
mov esi, dword [ebp - 0x604]
mov dword [ebp - 0x600], esi
lea ecx, [ebp - 0x55c]
call fcn.100395c0
jmp 0x1003f3f2
lea ecx, [ebp - 0x5fc]
call fcn.100384c0
lea ecx, [ebp - 0x55c]
call fcn.100384c0
lea ecx, [ebp - 0x5c4]
call fcn.100384c0
lea ecx, [ebp - 0x61c]
call fcn.10010bf0
mov ecx, dword [ebp - 0x560]
cmp ecx, 0x10
jb 0x10040586
mov edx, dword [ebp - 0x574]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1004057c
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x100405b0
push ecx
push edx
call fcn.10064ac2
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.10064a7b
mov esp, ebp
pop ebp
ret
call fcn.100053d0
push str.invalid_wchar_t_filename_argument
call fcn.1006393f
call fcn.10069c71
int3