Function at 0x10039330
Capabilities:
Contain obfuscated stackstrings
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x100aae55
mov eax, dword fs:[0]
push eax
sub esp, 0xa0
mov eax, dword [0x100c90c0]
xor eax, ebp
mov dword [ebp - 0x10], eax
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov esi, ecx
mov dword [ebp - 0x60], esi
call fcn.1003d840
mov dl, 0xd
mov dword [ebp - 0x40], 0x627f6a0d
mov dword [ebp - 0x3c], 0x62527d78
xor ecx, ecx
mov dword [ebp - 0x38], 0x6264797d
mov word [ebp - 0x34], 0x63
lea eax, [ebp - 0x3f]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0xc
jae 0x10039397
mov dl, byte [ebp - 0x40]
jmp 0x10039386
xorps xmm0, xmm0
mov byte [ebp - 0x33], 0
lea ecx, [ebp - 0x3f]
mov dword [ebp - 0x84], 0
movups xmmword [ebp - 0x94], xmm0
mov dword [ebp - 0x80], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100393c0
sub ecx, edx
lea eax, [ebp - 0x3f]
push ecx
push eax
lea ecx, [ebp - 0x94]
call fcn.10002620
cmp dword [ebp - 0x84], 0
mov edi, dword [esi + 0x30]
je 0x10039458
test edi, edi
je 0x10039458
push 4
push edi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x10039458
mov eax, dword [edi + 0xc4]
mov dword [ebp - 0x58], eax
mov esi, dword [eax]
cmp esi, eax
je 0x10039458
cmp esi, dword [edi + 0xc4]
jne 0x10039412
call fcn.1008abff
mov eax, dword [esi + 8]
mov dword [ebp - 0x64], eax
test eax, eax
je 0x10039444
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x10039427
mov ecx, dword [ecx]
cmp dword [ebp - 0x80], 0xf
lea eax, [ebp - 0x94]
cmova eax, dword [ebp - 0x94]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x1003948c
cmp esi, dword [edi + 0xc4]
jne 0x10039451
call fcn.1008abff
mov esi, dword [esi]
cmp esi, dword [ebp - 0x58]
jne 0x10039405
xor esi, esi
mov dword [ebp - 0x64], esi
mov ecx, dword [ebp - 0x80]
cmp ecx, 0xf
jbe 0x1003949b
mov edx, dword [ebp - 0x94]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10039491
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003ae8f
jmp 0x10039491
mov esi, dword [ebp - 0x64]
jmp 0x1003945d
push ecx
push edx
call fcn.100859f6
add esp, 8
movaps xmm0, xmmword [0x100bf920]
xor ecx, ecx
mov dword [ebp - 0x84], 0
mov dword [ebp - 0x80], 0xf
mov byte [ebp - 0x94], 0
movups xmmword [ebp - 0x48], xmm0
mov dword [ebp - 0x38], 0x3d293b32
mov word [ebp - 0x34], 0x393b
mov byte [ebp - 0x32], 0
mov al, byte [ebp - 0x48]
xor byte [ebp + ecx - 0x47], al
inc ecx
cmp ecx, 0x15
jb 0x100394d1
xorps xmm0, xmm0
mov byte [ebp - 0x32], 0
lea ecx, [ebp - 0x47]
mov dword [ebp - 0x6c], 0
movups xmmword [ebp - 0x7c], xmm0
mov dword [ebp - 0x68], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10039500
sub ecx, edx
lea eax, [ebp - 0x47]
push ecx
push eax
lea ecx, [ebp - 0x7c]
call fcn.10002620
cmp dword [ebp - 0x6c], 0
je 0x1003958d
test esi, esi
je 0x1003958d
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1003958d
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x58], eax
mov edi, dword [eax]
cmp edi, eax
je 0x1003958d
nop dword [eax]
cmp edi, dword [esi + 0xc4]
jne 0x1003954d
call fcn.1008abff
mov esi, dword [edi + 8]
test esi, esi
je 0x10039576
cmp dword [esi + 0x78], 0x10
lea ecx, [esi + 0x64]
jb 0x1003955f
mov ecx, dword [ecx]
cmp dword [ebp - 0x68], 0xf
lea eax, [ebp - 0x7c]
cmova eax, dword [ebp - 0x7c]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x1003958f
mov esi, dword [ebp - 0x64]
cmp edi, dword [esi + 0xc4]
jne 0x10039586
call fcn.1008abff
mov edi, dword [edi]
cmp edi, dword [ebp - 0x58]
jne 0x10039540
xor esi, esi
mov ecx, dword [ebp - 0x68]
cmp ecx, 0xf
jbe 0x100395c3
mov edx, dword [ebp - 0x7c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100395b9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003ae94
push ecx
push edx
call fcn.100859f6
add esp, 8
movaps xmm0, xmmword [0x100bedd0]
xor ecx, ecx
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x68], 0xf
mov byte [ebp - 0x7c], 0
movups xmmword [ebp - 0x44], xmm0
mov al, byte [ebp - 0x44]
xor byte [ebp + ecx - 0x43], al
inc ecx
cmp ecx, 0xe
jb 0x100395e2
xorps xmm0, xmm0
mov byte [ebp - 0x35], 0
lea ecx, [ebp - 0x43]
mov dword [ebp - 0x18], 0
movups xmmword [ebp - 0x28], xmm0
mov dword [ebp - 0x14], 0
lea edx, [ecx + 1]
nop
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10039610
sub ecx, edx
lea eax, [ebp - 0x43]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.10002620
cmp dword [ebp - 0x18], 0
je 0x1003969d
test esi, esi
je 0x1003969d
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1003969d
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x58], eax
mov edi, dword [eax]
cmp edi, eax
je 0x1003969d
nop dword [eax]
cmp edi, dword [esi + 0xc4]
jne 0x1003965d
call fcn.1008abff
mov eax, dword [edi + 8]
mov dword [ebp - 0x50], eax
test eax, eax
je 0x10039689
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x10039672
mov ecx, dword [ecx]
cmp dword [ebp - 0x14], 0xf
lea eax, [ebp - 0x28]
cmova eax, dword [ebp - 0x28]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x100396d0
cmp edi, dword [esi + 0xc4]
jne 0x10039696
call fcn.1008abff
mov edi, dword [edi]
cmp edi, dword [ebp - 0x58]
jne 0x10039650
xor eax, eax
mov ecx, dword [ebp - 0x60]
mov dword [ecx], eax
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x100396df
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100396d5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003ae99
jmp 0x100396d5
mov eax, dword [ebp - 0x50]
jmp 0x1003969f
push ecx
push edx
call fcn.100859f6
add esp, 8
mov eax, dword [ebp - 0x60]
cmp dword [eax], 0
je 0x100396f5
cmp dword [0x100cb044], 1
sete byte [0x100ce59f]
movaps xmm0, xmmword [0x100bf6b0]
xor ecx, ecx
movups xmmword [ebp - 0x48], xmm0
mov dword [ebp - 0x38], 0x3c2b2d
nop dword [eax]
mov al, byte [ebp - 0x48]
xor byte [ebp + ecx - 0x47], al
inc ecx
cmp ecx, 0x12
jb 0x10039710
xorps xmm0, xmm0
mov byte [ebp - 0x35], 0
lea ecx, [ebp - 0x47]
mov dword [ebp - 0x18], 0
movups xmmword [ebp - 0x28], xmm0
mov dword [ebp - 0x14], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10039740
sub ecx, edx
lea eax, [ebp - 0x47]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.10002620
cmp dword [ebp - 0x18], 0
je 0x100397cd
test esi, esi
je 0x100397cd
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x100397cd
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x50], eax
mov edi, dword [eax]
cmp edi, eax
je 0x100397cd
nop dword [eax]
cmp edi, dword [esi + 0xc4]
jne 0x1003978d
call fcn.1008abff
mov eax, dword [edi + 8]
mov dword [ebp - 0x58], eax
test eax, eax
je 0x100397b9
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x100397a2
mov ecx, dword [ecx]
cmp dword [ebp - 0x14], 0xf
lea eax, [ebp - 0x28]
cmova eax, dword [ebp - 0x28]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x10039801
cmp edi, dword [esi + 0xc4]
jne 0x100397c6
call fcn.1008abff
mov edi, dword [edi]
cmp edi, dword [ebp - 0x50]
jne 0x10039780
xor eax, eax
mov ecx, dword [ebp - 0x60]
mov dword [ecx + 4], eax
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x10039810
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10039806
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003ae9e
jmp 0x10039806
mov eax, dword [ebp - 0x58]
jmp 0x100397cf
push ecx
push edx
call fcn.100859f6
add esp, 8
movaps xmm0, xmmword [0x100bfe20]
xor ecx, ecx
movups xmmword [ebp - 0x48], xmm0
mov dword [ebp - 0x38], 0x72687369
mov byte [ebp - 0x34], 0
mov al, byte [ebp - 0x48]
xor byte [ebp + ecx - 0x47], al
inc ecx
cmp ecx, 0x13
jb 0x10039828
xorps xmm0, xmm0
mov byte [ebp - 0x34], 0
lea ecx, [ebp - 0x47]
mov dword [ebp - 0x18], 0
movups xmmword [ebp - 0x28], xmm0
mov dword [ebp - 0x14], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10039854
sub ecx, edx
lea eax, [ebp - 0x47]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.10002620
cmp dword [ebp - 0x18], 0
je 0x100398dd
test esi, esi
je 0x100398dd
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x100398dd
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x50], eax
mov edi, dword [eax]
cmp edi, eax
je 0x100398dd
cmp edi, dword [esi + 0xc4]
jne 0x1003989d
call fcn.1008abff
mov eax, dword [edi + 8]
mov dword [ebp - 0x58], eax
test eax, eax
je 0x100398c9
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x100398b2
mov ecx, dword [ecx]
cmp dword [ebp - 0x14], 0xf
lea eax, [ebp - 0x28]
cmova eax, dword [ebp - 0x28]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x10039911
cmp edi, dword [esi + 0xc4]
jne 0x100398d6
call fcn.1008abff
mov edi, dword [edi]
cmp edi, dword [ebp - 0x50]
jne 0x10039890
xor eax, eax
mov ecx, dword [ebp - 0x60]
mov dword [ecx + 0x34], eax
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x10039920
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10039916
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003aea3
jmp 0x10039916
mov eax, dword [ebp - 0x58]
jmp 0x100398df
push ecx
push edx
call fcn.100859f6
add esp, 8
mov eax, dword [ebp - 0x60]
mov edi, dword [eax + 0x34]
test edi, edi
je 0x1003995c
push 4
push edi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1003995c
mov edi, dword [edi + 0x124]
test edi, edi
je 0x1003995c
push 4
push edi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1003995c
push 0x1388
push eax
mov ecx, edi
call dword [0x100bd650]
movaps xmm0, xmmword [0x100bfcc0]
xor ecx, ecx
movups xmmword [ebp - 0x44], xmm0
mov word [ebp - 0x34], 0x54
nop
mov al, byte [ebp - 0x44]
xor byte [ebp + ecx - 0x43], al
inc ecx
cmp ecx, 0x10
jb 0x10039970
xorps xmm0, xmm0
mov byte [ebp - 0x33], 0
lea ecx, [ebp - 0x43]
mov dword [ebp - 0x18], 0
movups xmmword [ebp - 0x28], xmm0
mov dword [ebp - 0x14], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x100399a0
sub ecx, edx
lea eax, [ebp - 0x43]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.10002620
cmp dword [ebp - 0x18], 0
je 0x10039a2d
test esi, esi
je 0x10039a2d
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x10039a2d
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x50], eax
mov edi, dword [eax]
cmp edi, eax
je 0x10039a2d
nop dword [eax]
cmp edi, dword [esi + 0xc4]
jne 0x100399ed
call fcn.1008abff
mov eax, dword [edi + 8]
mov dword [ebp - 0x58], eax
test eax, eax
je 0x10039a19
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x10039a02
mov ecx, dword [ecx]
cmp dword [ebp - 0x14], 0xf
lea eax, [ebp - 0x28]
cmova eax, dword [ebp - 0x28]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x10039a61
cmp edi, dword [esi + 0xc4]
jne 0x10039a26
call fcn.1008abff
mov edi, dword [edi]
cmp edi, dword [ebp - 0x50]
jne 0x100399e0
xor eax, eax
mov edi, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x14]
mov dword [edi + 0x38], eax
cmp ecx, 0xf
jbe 0x10039a70
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10039a66
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003aea8
jmp 0x10039a66
mov eax, dword [ebp - 0x58]
jmp 0x10039a2f
push ecx
push edx
call fcn.100859f6
add esp, 8
mov edi, dword [edi + 0x38]
test edi, edi
je 0x10039aa6
push 4
push edi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x10039aa6
mov edi, dword [edi + 0x124]
test edi, edi
je 0x10039aa6
push 4
push edi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x10039aa6
push 0x17
push eax
mov ecx, edi
call dword [0x100bd650]
mov dl, 0x4a
mov dword [ebp - 0x40], 0x3e323e4a
mov dword [ebp - 0x3c], 0x272b2d15
xor ecx, ecx
mov dword [ebp - 0x38], 0x233e152f
mov word [ebp - 0x34], 0x2f27
mov byte [ebp - 0x32], 0
nop dword [eax]
lea eax, [ebp - 0x3f]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0xd
jae 0x10039ae1
mov dl, byte [ebp - 0x40]
jmp 0x10039ad0
xorps xmm0, xmm0
mov byte [ebp - 0x32], 0
lea ecx, [ebp - 0x3f]
mov dword [ebp - 0x18], 0
movups xmmword [ebp - 0x28], xmm0
mov dword [ebp - 0x14], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10039b00
sub ecx, edx
lea eax, [ebp - 0x3f]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.10002620
cmp dword [ebp - 0x18], 0
je 0x10039b8d
test esi, esi
je 0x10039b8d
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x10039b8d
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x50], eax
mov edi, dword [eax]
cmp edi, eax
je 0x10039b8d
nop dword [eax]
cmp edi, dword [esi + 0xc4]
jne 0x10039b4d
call fcn.1008abff
mov eax, dword [edi + 8]
mov dword [ebp - 0x58], eax
test eax, eax
je 0x10039b79
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x10039b62
mov ecx, dword [ecx]
cmp dword [ebp - 0x14], 0xf
lea eax, [ebp - 0x28]
cmova eax, dword [ebp - 0x28]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x10039bc1
cmp edi, dword [esi + 0xc4]
jne 0x10039b86
call fcn.1008abff
mov edi, dword [edi]
cmp edi, dword [ebp - 0x50]
jne 0x10039b40
xor eax, eax
mov ecx, dword [ebp - 0x60]
mov dword [ecx + 0x3c], eax
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x10039bd0
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10039bc6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003aead
jmp 0x10039bc6
mov eax, dword [ebp - 0x58]
jmp 0x10039b8f
push ecx
push edx
call fcn.100859f6
add esp, 8
movaps xmm0, xmmword [0x100bf130]
xor ecx, ecx
movups xmmword [ebp - 0x48], xmm0
mov dword [ebp - 0x38], 0x3141211
mov byte [ebp - 0x34], 0
mov al, byte [ebp - 0x48]
xor byte [ebp + ecx - 0x47], al
inc ecx
cmp ecx, 0x13
jb 0x10039be8
xorps xmm0, xmm0
mov byte [ebp - 0x34], 0
lea ecx, [ebp - 0x47]
mov dword [ebp - 0x6c], 0
movups xmmword [ebp - 0x7c], xmm0
mov dword [ebp - 0x68], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10039c14
sub ecx, edx
lea eax, [ebp - 0x47]
push ecx
push eax
lea ecx, [ebp - 0x7c]
call fcn.10002620
cmp dword [ebp - 0x6c], 0
je 0x10039ca0
mov esi, dword [ebp - 0x64]
test esi, esi
je 0x10039ca0
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x10039ca0
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x50], eax
mov edi, dword [eax]
cmp edi, eax
je 0x10039ca0
cmp edi, dword [esi + 0xc4]
jne 0x10039c60
call fcn.1008abff
mov esi, dword [edi + 8]
test esi, esi
je 0x10039c89
cmp dword [esi + 0x78], 0x10
lea ecx, [esi + 0x64]
jb 0x10039c72
mov ecx, dword [ecx]
cmp dword [ebp - 0x68], 0xf
lea eax, [ebp - 0x7c]
cmova eax, dword [ebp - 0x7c]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x10039ca2
mov esi, dword [ebp - 0x64]
cmp edi, dword [esi + 0xc4]
jne 0x10039c99
call fcn.1008abff
mov edi, dword [edi]
cmp edi, dword [ebp - 0x50]
jne 0x10039c53
xor esi, esi
mov ecx, dword [ebp - 0x68]
cmp ecx, 0xf
jbe 0x10039cd6
mov edx, dword [ebp - 0x7c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10039ccc
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003aeb2
push ecx
push edx
call fcn.100859f6
add esp, 8
movaps xmm0, xmmword [0x100bf060]
xor ecx, ecx
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x68], 0xf
mov byte [ebp - 0x7c], 0
movups xmmword [ebp - 0x48], xmm0
mov dword [ebp - 0x38], 0x111313
nop dword [eax]
mov al, byte [ebp - 0x48]
xor byte [ebp + ecx - 0x47], al
inc ecx
cmp ecx, 0x12
jb 0x10039d00
xorps xmm0, xmm0
mov byte [ebp - 0x35], 0
lea ecx, [ebp - 0x47]
mov dword [ebp - 0x18], 0
movups xmmword [ebp - 0x28], xmm0
mov dword [ebp - 0x14], 0
lea edx, [ecx + 1]
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10039d30
sub ecx, edx
lea eax, [ebp - 0x47]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.10002620
cmp dword [ebp - 0x18], 0
je 0x10039dbd
test esi, esi
je 0x10039dbd
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x10039dbd
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x50], eax
mov edi, dword [eax]
cmp edi, eax
je 0x10039dbd
nop dword [eax]
cmp edi, dword [esi + 0xc4]
jne 0x10039d7d
call fcn.1008abff
mov eax, dword [edi + 8]
mov dword [ebp - 0x58], eax
test eax, eax
je 0x10039da9
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x10039d92
mov ecx, dword [ecx]
cmp dword [ebp - 0x14], 0xf
lea eax, [ebp - 0x28]
cmova eax, dword [ebp - 0x28]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x10039df1
cmp edi, dword [esi + 0xc4]
jne 0x10039db6
call fcn.1008abff
mov edi, dword [edi]
cmp edi, dword [ebp - 0x50]
jne 0x10039d70
xor eax, eax
mov ecx, dword [ebp - 0x60]
mov dword [ecx + 0x40], eax
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x10039e00
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10039df6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003aeb7
jmp 0x10039df6
mov eax, dword [ebp - 0x58]
jmp 0x10039dbf
push ecx
push edx
call fcn.100859f6
add esp, 8
movaps xmm0, xmmword [0x100bfde0]
xor ecx, ecx
movups xmmword [ebp - 0x44], xmm0
mov word [ebp - 0x34], 0x6f6d
mov byte [ebp - 0x32], 0
mov al, byte [ebp - 0x44]
xor byte [ebp + ecx - 0x43], al
inc ecx
cmp ecx, 0x11
jb 0x10039e17
xorps xmm0, xmm0
mov byte [ebp - 0x32], 0
lea ecx, [ebp - 0x43]
mov dword [ebp - 0x18], 0
movups xmmword [ebp - 0x28], xmm0
mov dword [ebp - 0x14], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10039e43
sub ecx, edx
lea eax, [ebp - 0x43]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.10002620
cmp dword [ebp - 0x18], 0
je 0x10039ecd
test esi, esi
je 0x10039ecd
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x10039ecd
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x50], eax
mov edi, dword [eax]
cmp edi, eax
je 0x10039ecd
nop
cmp edi, dword [esi + 0xc4]
jne 0x10039e8d
call fcn.1008abff
mov eax, dword [edi + 8]
mov dword [ebp - 0x58], eax
test eax, eax
je 0x10039eb9
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x10039ea2
mov ecx, dword [ecx]
cmp dword [ebp - 0x14], 0xf
lea eax, [ebp - 0x28]
cmova eax, dword [ebp - 0x28]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x10039f01
cmp edi, dword [esi + 0xc4]
jne 0x10039ec6
call fcn.1008abff
mov edi, dword [edi]
cmp edi, dword [ebp - 0x50]
jne 0x10039e80
xor eax, eax
mov ecx, dword [ebp - 0x60]
mov dword [ecx + 0x44], eax
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x10039f10
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10039f06
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003aebc
jmp 0x10039f06
mov eax, dword [ebp - 0x58]
jmp 0x10039ecf
push ecx
push edx
call fcn.100859f6
add esp, 8
mov eax, dword [ebp - 0x60]
mov edi, dword [eax + 0x40]
test edi, edi
je 0x10039f49
push 4
push edi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x10039f49
mov edi, dword [edi + 0x124]
test edi, edi
je 0x10039f49
push 4
push edi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x10039f49
push 0xa
push eax
mov ecx, edi
call dword [0x100bd650]
mov dl, 0x1a
mov dword [ebp - 0x40], 0x746e781a
mov dword [ebp - 0x3c], 0x7b6e6945
xor ecx, ecx
mov dword [ebp - 0x38], 0x6e457f6e
mov word [ebp - 0x34], 0x6a
lea eax, [ebp - 0x3f]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0xc
jae 0x10039f79
mov dl, byte [ebp - 0x40]
jmp 0x10039f68
xorps xmm0, xmm0
mov byte [ebp - 0x33], 0
lea ecx, [ebp - 0x3f]
mov dword [ebp - 0x18], 0
movups xmmword [ebp - 0x28], xmm0
mov dword [ebp - 0x14], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x10039f98
sub ecx, edx
lea eax, [ebp - 0x3f]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.10002620
cmp dword [ebp - 0x18], 0
je 0x1003a021
test esi, esi
je 0x1003a021
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1003a021
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x50], eax
mov edi, dword [eax]
cmp edi, eax
je 0x1003a021
cmp edi, dword [esi + 0xc4]
jne 0x10039fe1
call fcn.1008abff
mov eax, dword [edi + 8]
mov dword [ebp - 0x58], eax
test eax, eax
je 0x1003a00d
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x10039ff6
mov ecx, dword [ecx]
cmp dword [ebp - 0x14], 0xf
lea eax, [ebp - 0x28]
cmova eax, dword [ebp - 0x28]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x1003a055
cmp edi, dword [esi + 0xc4]
jne 0x1003a01a
call fcn.1008abff
mov edi, dword [edi]
cmp edi, dword [ebp - 0x50]
jne 0x10039fd4
xor eax, eax
mov esi, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x14]
mov dword [esi + 8], eax
cmp ecx, 0xf
jbe 0x1003a064
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1003a05a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003aec1
jmp 0x1003a05a
mov eax, dword [ebp - 0x58]
jmp 0x1003a023
push ecx
push edx
call fcn.100859f6
add esp, 8
cmp dword [esi + 8], 0
je 0x1003a1dd
xorps xmm0, xmm0
mov dword [ebp - 0x14], 0
push 0x1000
lea ecx, [ebp - 0x2c]
movq qword [ebp - 0x1c], xmm0
movups xmmword [ebp - 0x2c], xmm0
call fcn.10012700
mov dword [ebp - 4], 0
mov edx, dword [ebp - 0x18]
mov esi, edx
mov ecx, dword [ebp - 0x1c]
sub esi, ecx
mov dword [ebp - 0x2c], vtable.Packet.0
cmp esi, 0x989680
ja 0x1003a0f2
mov edi, dword [ebp - 0x20]
inc edi
cmp esi, edi
jae 0x1003a0e2
mov eax, dword [ebp - 0x14]
sub eax, ecx
cmp edi, eax
jbe 0x1003a0cb
push ecx
push edi
lea ecx, [ebp - 0x1c]
call fcn.100127b0
jmp 0x1003a0df
sub edi, esi
push edi
push 0
push edx
lea esi, [edx + edi]
call fcn.10087b80
add esp, 0xc
mov dword [ebp - 0x18], esi
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x20]
mov byte [ecx + eax], 0xa1
inc dword [ebp - 0x20]
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x1c]
mov esi, edx
mov dword [ebp - 4], 1
sub esi, ecx
cmp esi, 0x989680
ja 0x1003a149
mov edi, dword [ebp - 0x20]
inc edi
cmp esi, edi
jae 0x1003a139
mov eax, dword [ebp - 0x14]
sub eax, ecx
cmp edi, eax
jbe 0x1003a122
push ecx
push edi
lea ecx, [ebp - 0x1c]
call fcn.100127b0
jmp 0x1003a136
sub edi, esi
push edi
push 0
push edx
lea esi, [edi + edx]
call fcn.10087b80
add esp, 0xc
mov dword [ebp - 0x18], esi
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x20]
mov byte [ecx + eax], 0xab
inc dword [ebp - 0x20]
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x1c]
mov al, byte [0x100cb040]
mov esi, edx
sub esi, ecx
mov byte [ebp - 0x51], al
cmp esi, 0x989680
ja 0x1003a1a3
mov edi, dword [ebp - 0x20]
inc edi
cmp esi, edi
jae 0x1003a191
mov eax, dword [ebp - 0x14]
sub eax, ecx
cmp edi, eax
jbe 0x1003a17a
push ecx
push edi
lea ecx, [ebp - 0x1c]
call fcn.100127b0
jmp 0x1003a18e
sub edi, esi
push edi
push 0
push edx
lea esi, [edi + edx]
call fcn.10087b80
add esp, 0xc
mov dword [ebp - 0x18], esi
mov ecx, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x20]
mov dl, byte [ebp - 0x51]
mov byte [ecx + eax], dl
inc dword [ebp - 0x20]
mov edx, dword [ebp - 0x18]
mov ecx, dword [ebp - 0x1c]
sub edx, ecx
mov dword [ebp - 0x58], ecx
mov dword [ebp - 0x50], edx
cmp edx, 0x4000
ja 0x1003a1ce
mov eax, dword [0x100ce570]
mov dword [ebp - 0x5c], eax
mov ecx, dword ds:[0x100b6b8c]
mov ecx, dword ds:[ecx]
push dword [ebp - 0x50]
push dword [ebp - 0x58]
call dword [ebp - 0x5c]
lea ecx, [ebp - 0x2c]
mov dword [ebp - 4], 0xffffffff
call fcn.100129b0
movaps xmm0, xmmword [0x100c0170]
xor ecx, ecx
movups xmmword [ebp - 0x48], xmm0
mov dword [ebp - 0x38], 0x797e6378
mov word [ebp - 0x34], 0x70
mov al, byte [ebp - 0x48]
xor byte [ebp + ecx - 0x47], al
inc ecx
cmp ecx, 0x14
jb 0x1003a1f7
xorps xmm0, xmm0
mov byte [ebp - 0x33], 0
lea ecx, [ebp - 0x47]
mov dword [ebp - 0x6c], 0
movups xmmword [ebp - 0x7c], xmm0
mov dword [ebp - 0x68], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003a223
sub ecx, edx
lea eax, [ebp - 0x47]
push ecx
push eax
lea ecx, [ebp - 0x7c]
call fcn.10002620
cmp dword [ebp - 0x6c], 0
je 0x1003a2af
mov esi, dword [ebp - 0x64]
test esi, esi
je 0x1003a2af
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1003a2af
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x5c], eax
mov edi, dword [eax]
cmp edi, eax
je 0x1003a2af
cmp edi, dword [esi + 0xc4]
jne 0x1003a26f
call fcn.1008abff
mov esi, dword [edi + 8]
test esi, esi
je 0x1003a298
cmp dword [esi + 0x78], 0x10
lea ecx, [esi + 0x64]
jb 0x1003a281
mov ecx, dword [ecx]
cmp dword [ebp - 0x68], 0xf
lea eax, [ebp - 0x7c]
cmova eax, dword [ebp - 0x7c]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x1003a2b1
mov esi, dword [ebp - 0x64]
cmp edi, dword [esi + 0xc4]
jne 0x1003a2a8
call fcn.1008abff
mov edi, dword [edi]
cmp edi, dword [ebp - 0x5c]
jne 0x1003a262
xor esi, esi
mov ecx, dword [ebp - 0x68]
cmp ecx, 0xf
jbe 0x1003a2e5
mov edx, dword [ebp - 0x7c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1003a2db
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003aec6
push ecx
push edx
call fcn.100859f6
add esp, 8
mov byte [ebp - 0x40], 0x21
mov cl, 0x55
xor cl, byte [ebp - 0x40]
mov al, 0x43
xor al, byte [ebp - 0x40]
mov dl, 0x4f
mov byte [ebp - 0x3f], al
mov ch, 0x56
mov byte [ebp - 0x3e], cl
mov dh, 0x44
mov cl, byte [ebp - 0x40]
mov ah, 0x7e
mov byte [ebp - 0x51], 0x40
xor ch, cl
mov al, byte [ebp - 0x51]
xor dh, cl
xor al, cl
mov byte [ebp - 0x49], 0x51
mov byte [ebp - 0x39], al
xor ah, cl
mov al, byte [ebp - 0x49]
xorps xmm0, xmm0
xor al, cl
mov byte [ebp - 0x2d], 0x4e
mov byte [ebp - 0x38], al
mov al, byte [ebp - 0x2d]
xor al, cl
mov byte [ebp - 0x2e], dl
xor dl, cl
mov byte [ebp - 0x37], al
mov al, byte [ebp - 0x2e]
xor al, cl
mov byte [ebp - 0x3b], ch
lea ecx, [ebp - 0x3f]
mov byte [ebp - 0x35], 0
mov byte [ebp - 0x3d], dl
mov byte [ebp - 0x3a], dh
lea edx, [ecx + 1]
mov dword [ebp - 0x6c], 0
mov dword [ebp - 0x68], 0xf
mov byte [ebp - 0x7c], 0
mov byte [ebp - 0x3c], ah
mov byte [ebp - 0x36], al
mov byte [ebp - 0x35], 0
movups xmmword [ebp - 0x28], xmm0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003a380
sub ecx, edx
lea eax, [ebp - 0x3f]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.10002620
cmp dword [ebp - 0x18], 0
je 0x1003a40d
test esi, esi
je 0x1003a40d
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1003a40d
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x5c], eax
mov edi, dword [eax]
cmp edi, eax
je 0x1003a40d
nop dword [eax]
cmp edi, dword [esi + 0xc4]
jne 0x1003a3cd
call fcn.1008abff
mov eax, dword [edi + 8]
mov dword [ebp - 0x50], eax
test eax, eax
je 0x1003a3f9
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x1003a3e2
mov ecx, dword [ecx]
cmp dword [ebp - 0x14], 0xf
lea eax, [ebp - 0x28]
cmova eax, dword [ebp - 0x28]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x1003a441
cmp edi, dword [esi + 0xc4]
jne 0x1003a406
call fcn.1008abff
mov edi, dword [edi]
cmp edi, dword [ebp - 0x5c]
jne 0x1003a3c0
xor eax, eax
mov ecx, dword [ebp - 0x60]
mov dword [ecx + 0xc], eax
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x1003a450
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1003a446
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003aecb
jmp 0x1003a446
mov eax, dword [ebp - 0x50]
jmp 0x1003a40f
push ecx
push edx
call fcn.100859f6
add esp, 8
mov byte [ebp - 0x3c], 0x25
mov cl, 0x51
xor cl, byte [ebp - 0x3c]
mov al, 0x47
xor al, byte [ebp - 0x3c]
mov dh, 0x57
mov byte [ebp - 0x3b], al
mov ch, 0x44
mov byte [ebp - 0x3a], cl
mov dl, 0x4b
mov cl, byte [ebp - 0x3c]
mov ah, 0x7a
mov byte [ebp - 0x2e], 0x48
xor dl, cl
mov al, byte [ebp - 0x2e]
xor ch, cl
xor al, cl
mov byte [ebp - 0x2d], 0x4a
mov byte [ebp - 0x35], al
xor ah, cl
mov al, byte [ebp - 0x2d]
xorps xmm0, xmm0
xor al, cl
mov byte [ebp - 0x49], dh
xor dh, cl
mov byte [ebp - 0x34], al
mov al, byte [ebp - 0x49]
xor al, cl
mov byte [ebp - 0x37], ch
lea ecx, [ebp - 0x3b]
mov byte [ebp - 0x32], 0
mov byte [ebp - 0x39], dl
mov byte [ebp - 0x36], dh
lea edx, [ecx + 1]
mov byte [ebp - 0x38], ah
mov byte [ebp - 0x33], al
mov byte [ebp - 0x32], 0
movups xmmword [ebp - 0x28], xmm0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003a4d0
sub ecx, edx
lea eax, [ebp - 0x3b]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.10002620
cmp dword [ebp - 0x18], 0
je 0x1003a55d
test esi, esi
je 0x1003a55d
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1003a55d
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x5c], eax
mov edi, dword [eax]
cmp edi, eax
je 0x1003a55d
nop dword [eax]
cmp edi, dword [esi + 0xc4]
jne 0x1003a51d
call fcn.1008abff
mov eax, dword [edi + 8]
mov dword [ebp - 0x50], eax
test eax, eax
je 0x1003a549
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x1003a532
mov ecx, dword [ecx]
cmp dword [ebp - 0x14], 0xf
lea eax, [ebp - 0x28]
cmova eax, dword [ebp - 0x28]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x1003a591
cmp edi, dword [esi + 0xc4]
jne 0x1003a556
call fcn.1008abff
mov edi, dword [edi]
cmp edi, dword [ebp - 0x5c]
jne 0x1003a510
xor eax, eax
mov ecx, dword [ebp - 0x60]
mov dword [ecx + 0x10], eax
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x1003a5a0
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1003a596
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003aed0
jmp 0x1003a596
mov eax, dword [ebp - 0x50]
jmp 0x1003a55f
push ecx
push edx
call fcn.100859f6
add esp, 8
mov dl, 0x1a
mov dword [ebp - 0x40], 0x746e781a
mov dword [ebp - 0x3c], 0x79797b45
xor ecx, ecx
mov dword [ebp - 0x38], 0x7569697f
mov word [ebp - 0x34], 0x6368
mov byte [ebp - 0x32], 0
lea eax, [ebp - 0x3f]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0xd
jae 0x1003a5d4
mov dl, byte [ebp - 0x40]
jmp 0x1003a5c3
xorps xmm0, xmm0
mov byte [ebp - 0x32], 0
lea ecx, [ebp - 0x3f]
mov dword [ebp - 0x18], 0
movups xmmword [ebp - 0x28], xmm0
mov dword [ebp - 0x14], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003a5f3
sub ecx, edx
lea eax, [ebp - 0x3f]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.10002620
cmp dword [ebp - 0x18], 0
je 0x1003a67d
test esi, esi
je 0x1003a67d
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1003a67d
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x5c], eax
mov edi, dword [eax]
cmp edi, eax
je 0x1003a67d
nop
cmp edi, dword [esi + 0xc4]
jne 0x1003a63d
call fcn.1008abff
mov eax, dword [edi + 8]
mov dword [ebp - 0x50], eax
test eax, eax
je 0x1003a669
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x1003a652
mov ecx, dword [ecx]
cmp dword [ebp - 0x14], 0xf
lea eax, [ebp - 0x28]
cmova eax, dword [ebp - 0x28]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x1003a6b1
cmp edi, dword [esi + 0xc4]
jne 0x1003a676
call fcn.1008abff
mov edi, dword [edi]
cmp edi, dword [ebp - 0x5c]
jne 0x1003a630
xor eax, eax
mov ecx, dword [ebp - 0x60]
mov dword [ecx + 0x14], eax
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x1003a6c0
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1003a6b6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003aed5
jmp 0x1003a6b6
mov eax, dword [ebp - 0x50]
jmp 0x1003a67f
push ecx
push edx
call fcn.100859f6
add esp, 8
mov byte [ebp - 0x40], 5
mov cl, 0x71
xor cl, byte [ebp - 0x40]
mov al, 0x67
xor al, byte [ebp - 0x40]
mov dl, 0x6b
mov byte [ebp - 0x3f], al
mov ch, dl
mov byte [ebp - 0x3e], cl
mov dh, 0x6a
mov cl, byte [ebp - 0x40]
mov ah, 0x5a
mov byte [ebp - 0x2e], 0x77
xor dl, cl
mov al, byte [ebp - 0x2e]
xor ch, cl
xor al, cl
mov byte [ebp - 0x2d], 0x68
mov byte [ebp - 0x39], al
xor dh, cl
mov al, byte [ebp - 0x2d]
xor ah, cl
xor al, cl
mov byte [ebp - 0x49], 0x64
mov byte [ebp - 0x38], al
xorps xmm0, xmm0
mov al, byte [ebp - 0x49]
xor al, cl
mov byte [ebp - 0x51], 0x69
mov byte [ebp - 0x37], al
mov al, byte [ebp - 0x51]
xor al, cl
mov byte [ebp - 0x3b], ch
lea ecx, [ebp - 0x3f]
mov byte [ebp - 0x35], 0
mov byte [ebp - 0x3d], dl
mov byte [ebp - 0x3a], dh
lea edx, [ecx + 1]
mov byte [ebp - 0x3c], ah
mov byte [ebp - 0x36], al
mov byte [ebp - 0x35], 0
movups xmmword [ebp - 0x28], xmm0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003a746
sub ecx, edx
lea eax, [ebp - 0x3f]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.10002620
cmp dword [ebp - 0x18], 0
je 0x1003a7cf
test esi, esi
je 0x1003a7cf
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1003a7cf
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x5c], eax
mov edi, dword [eax]
cmp edi, eax
je 0x1003a7cf
cmp edi, dword [esi + 0xc4]
jne 0x1003a78f
call fcn.1008abff
mov eax, dword [edi + 8]
mov dword [ebp - 0x50], eax
test eax, eax
je 0x1003a7bb
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x1003a7a4
mov ecx, dword [ecx]
cmp dword [ebp - 0x14], 0xf
lea eax, [ebp - 0x28]
cmova eax, dword [ebp - 0x28]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x1003a803
cmp edi, dword [esi + 0xc4]
jne 0x1003a7c8
call fcn.1008abff
mov edi, dword [edi]
cmp edi, dword [ebp - 0x5c]
jne 0x1003a782
xor eax, eax
mov ecx, dword [ebp - 0x60]
mov dword [ecx + 0x18], eax
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x1003a812
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1003a808
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003aeda
jmp 0x1003a808
mov eax, dword [ebp - 0x50]
jmp 0x1003a7d1
push ecx
push edx
call fcn.100859f6
add esp, 8
mov byte [ebp - 0x3c], 0x7b
mov cl, 0xf
xor cl, byte [ebp - 0x3c]
mov al, 0x19
xor al, byte [ebp - 0x3c]
mov ch, 0x16
mov byte [ebp - 0x3b], al
mov dl, 0x15
mov byte [ebp - 0x3a], cl
mov dh, 0x1a
mov cl, byte [ebp - 0x3c]
mov ah, 0x24
mov byte [ebp - 0x2e], 0x1c
xor dl, cl
mov al, byte [ebp - 0x2e]
xor ch, cl
xor al, cl
mov byte [ebp - 0x2d], 0x12
mov byte [ebp - 0x35], al
xor dh, cl
mov al, byte [ebp - 0x2d]
xor ah, cl
xor al, cl
mov byte [ebp - 0x49], 0x18
mov byte [ebp - 0x34], al
xorps xmm0, xmm0
mov al, byte [ebp - 0x49]
xor al, cl
mov byte [ebp - 0x37], ch
lea ecx, [ebp - 0x3b]
mov byte [ebp - 0x32], 0
mov byte [ebp - 0x39], dl
mov byte [ebp - 0x36], dh
lea edx, [ecx + 1]
mov byte [ebp - 0x38], ah
mov byte [ebp - 0x33], al
mov byte [ebp - 0x32], 0
movups xmmword [ebp - 0x28], xmm0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003a890
sub ecx, edx
lea eax, [ebp - 0x3b]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.10002620
cmp dword [ebp - 0x18], 0
je 0x1003a91d
test esi, esi
je 0x1003a91d
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1003a91d
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x5c], eax
mov edi, dword [eax]
cmp edi, eax
je 0x1003a91d
nop dword [eax]
cmp edi, dword [esi + 0xc4]
jne 0x1003a8dd
call fcn.1008abff
mov eax, dword [edi + 8]
mov dword [ebp - 0x50], eax
test eax, eax
je 0x1003a909
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x1003a8f2
mov ecx, dword [ecx]
cmp dword [ebp - 0x14], 0xf
lea eax, [ebp - 0x28]
cmova eax, dword [ebp - 0x28]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x1003a951
cmp edi, dword [esi + 0xc4]
jne 0x1003a916
call fcn.1008abff
mov edi, dword [edi]
cmp edi, dword [ebp - 0x5c]
jne 0x1003a8d0
xor eax, eax
mov ecx, dword [ebp - 0x60]
mov dword [ecx + 0x1c], eax
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x1003a960
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1003a956
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003aedf
jmp 0x1003a956
mov eax, dword [ebp - 0x50]
jmp 0x1003a91f
push ecx
push edx
call fcn.100859f6
add esp, 8
mov byte [ebp - 0x3c], 0x29
mov cl, 0x5d
xor cl, byte [ebp - 0x3c]
mov al, 0x4b
xor al, byte [ebp - 0x3c]
mov ch, 0x5b
mov byte [ebp - 0x3b], al
mov dl, 0x47
mov byte [ebp - 0x2e], ch
mov dh, 0x48
mov al, byte [ebp - 0x2e]
mov ah, 0x76
mov byte [ebp - 0x3a], cl
xorps xmm0, xmm0
mov cl, byte [ebp - 0x3c]
xor al, cl
mov byte [ebp - 0x2d], 0x4c
xor dl, cl
mov byte [ebp - 0x35], al
mov al, byte [ebp - 0x2d]
xor ch, cl
xor dh, cl
mov byte [ebp - 0x37], ch
xor ah, cl
mov byte [ebp - 0x33], 0
xor al, cl
mov byte [ebp - 0x39], dl
lea ecx, [ebp - 0x3b]
mov byte [ebp - 0x36], dh
mov byte [ebp - 0x38], ah
lea edx, [ecx + 1]
mov byte [ebp - 0x34], al
mov byte [ebp - 0x33], 0
movups xmmword [ebp - 0x28], xmm0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0
nop dword [eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003a9d0
sub ecx, edx
lea eax, [ebp - 0x3b]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.10002620
cmp dword [ebp - 0x18], 0
je 0x1003aa5d
test esi, esi
je 0x1003aa5d
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1003aa5d
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x5c], eax
mov edi, dword [eax]
cmp edi, eax
je 0x1003aa5d
nop dword [eax]
cmp edi, dword [esi + 0xc4]
jne 0x1003aa1d
call fcn.1008abff
mov eax, dword [edi + 8]
mov dword [ebp - 0x50], eax
test eax, eax
je 0x1003aa49
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x1003aa32
mov ecx, dword [ecx]
cmp dword [ebp - 0x14], 0xf
lea eax, [ebp - 0x28]
cmova eax, dword [ebp - 0x28]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x1003aa91
cmp edi, dword [esi + 0xc4]
jne 0x1003aa56
call fcn.1008abff
mov edi, dword [edi]
cmp edi, dword [ebp - 0x5c]
jne 0x1003aa10
xor eax, eax
mov ecx, dword [ebp - 0x60]
mov dword [ecx + 0x20], eax
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x1003aaa0
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1003aa96
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003aee4
jmp 0x1003aa96
mov eax, dword [ebp - 0x50]
jmp 0x1003aa5f
push ecx
push edx
call fcn.100859f6
add esp, 8
mov dl, 0xa
mov dword [ebp - 0x40], 0x647e680a
mov dword [ebp - 0x3c], 0x6d7a7f55
xor ecx, ecx
mov dword [ebp - 0x38], 0x6f6e6b78
mov byte [ebp - 0x34], 0
nop dword [eax]
lea eax, [ebp - 0x3f]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0xb
jae 0x1003aad1
mov dl, byte [ebp - 0x40]
jmp 0x1003aac0
xorps xmm0, xmm0
mov byte [ebp - 0x34], 0
lea ecx, [ebp - 0x3f]
mov dword [ebp - 0x18], 0
movups xmmword [ebp - 0x28], xmm0
mov dword [ebp - 0x14], 0
lea edx, [ecx + 1]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003aaf0
sub ecx, edx
lea eax, [ebp - 0x3f]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.10002620
cmp dword [ebp - 0x18], 0
je 0x1003ab7d
test esi, esi
je 0x1003ab7d
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1003ab7d
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x5c], eax
mov edi, dword [eax]
cmp edi, eax
je 0x1003ab7d
nop dword [eax]
cmp edi, dword [esi + 0xc4]
jne 0x1003ab3d
call fcn.1008abff
mov eax, dword [edi + 8]
mov dword [ebp - 0x50], eax
test eax, eax
je 0x1003ab69
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x1003ab52
mov ecx, dword [ecx]
cmp dword [ebp - 0x14], 0xf
lea eax, [ebp - 0x28]
cmova eax, dword [ebp - 0x28]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x1003abb1
cmp edi, dword [esi + 0xc4]
jne 0x1003ab76
call fcn.1008abff
mov edi, dword [edi]
cmp edi, dword [ebp - 0x5c]
jne 0x1003ab30
xor eax, eax
mov ecx, dword [ebp - 0x60]
mov dword [ecx + 0x24], eax
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x1003abc0
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1003abb6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003aee9
jmp 0x1003abb6
mov eax, dword [ebp - 0x50]
jmp 0x1003ab7f
push ecx
push edx
call fcn.100859f6
add esp, 8
mov byte [ebp - 0x40], 0xe
mov cl, 0x7a
xor cl, byte [ebp - 0x40]
mov al, 0x6c
xor al, byte [ebp - 0x40]
mov ch, 0x7b
mov byte [ebp - 0x3f], al
mov dl, 0x60
mov byte [ebp - 0x3e], cl
mov dh, dl
mov cl, byte [ebp - 0x40]
mov ah, 0x51
mov byte [ebp - 0x2e], 0x67
xor dl, cl
mov al, byte [ebp - 0x2e]
xor dh, cl
xor al, cl
mov byte [ebp - 0x2d], 0x7f
mov byte [ebp - 0x39], al
xor ah, cl
mov al, byte [ebp - 0x2d]
xorps xmm0, xmm0
xor al, cl
mov byte [ebp - 0x49], ch
mov byte [ebp - 0x38], al
xor ch, cl
mov al, byte [ebp - 0x49]
xor al, cl
mov byte [ebp - 0x51], 0x6b
mov byte [ebp - 0x37], al
mov al, byte [ebp - 0x51]
xor al, cl
mov byte [ebp - 0x3b], ch
lea ecx, [ebp - 0x3f]
mov byte [ebp - 0x35], 0
mov byte [ebp - 0x3d], dl
mov byte [ebp - 0x3a], dh
lea edx, [ecx + 1]
mov byte [ebp - 0x3c], ah
mov byte [ebp - 0x36], al
mov byte [ebp - 0x35], 0
movups xmmword [ebp - 0x28], xmm0
mov dword [ebp - 0x18], 0
mov dword [ebp - 0x14], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003ac45
sub ecx, edx
lea eax, [ebp - 0x3f]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.10002620
cmp dword [ebp - 0x18], 0
je 0x1003acce
test esi, esi
je 0x1003acce
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1003acce
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x5c], eax
mov edi, dword [eax]
cmp edi, eax
je 0x1003acce
cmp edi, dword [esi + 0xc4]
jne 0x1003ac8e
call fcn.1008abff
mov eax, dword [edi + 8]
mov dword [ebp - 0x50], eax
test eax, eax
je 0x1003acba
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x1003aca3
mov ecx, dword [ecx]
cmp dword [ebp - 0x14], 0xf
lea eax, [ebp - 0x28]
cmova eax, dword [ebp - 0x28]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x1003ad02
cmp edi, dword [esi + 0xc4]
jne 0x1003acc7
call fcn.1008abff
mov edi, dword [edi]
cmp edi, dword [ebp - 0x5c]
jne 0x1003ac81
xor eax, eax
mov ecx, dword [ebp - 0x60]
mov dword [ecx + 0x28], eax
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x1003ad11
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1003ad07
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003aeee
jmp 0x1003ad07
mov eax, dword [ebp - 0x50]
jmp 0x1003acd0
push ecx
push edx
call fcn.100859f6
add esp, 8
mov cl, 0x31
mov byte [ebp - 0x3c], 0x45
mov byte [ebp - 0x49], cl
mov al, 0x27
xor al, byte [ebp - 0x3c]
mov ch, 0x26
xor cl, byte [ebp - 0x3c]
mov dl, 0x2b
mov byte [ebp - 0x3b], al
mov dh, 0x37
mov byte [ebp - 0x3a], cl
mov ah, 0x1a
mov cl, byte [ebp - 0x3c]
xorps xmm0, xmm0
mov byte [ebp - 0x2e], 0x24
xor dl, cl
mov al, byte [ebp - 0x2e]
xor ch, cl
xor al, cl
mov byte [ebp - 0x2d], 0x23
mov byte [ebp - 0x35], al
xor dh, cl
mov al, byte [ebp - 0x2d]
xor ah, cl
xor al, cl
mov byte [ebp - 0x37], ch
mov byte [ebp - 0x34], al
mov al, byte [ebp - 0x49]
xor al, cl
mov byte [ebp - 0x32], 0
lea ecx, [ebp - 0x3b]
mov byte [ebp - 0x39], dl
mov byte [ebp - 0x36], dh
lea edx, [ecx + 1]
mov byte [ebp - 0x38], ah
mov byte [ebp - 0x33], al
mov byte [ebp - 0x32], 0
movups xmmword [ebp - 0xac], xmm0
mov dword [ebp - 0x9c], 0
mov dword [ebp - 0x98], 0
mov al, byte [ecx]
inc ecx
test al, al
jne 0x1003ad93
sub ecx, edx
lea eax, [ebp - 0x3b]
push ecx
push eax
lea ecx, [ebp - 0xac]
call fcn.10002620
cmp dword [ebp - 0x9c], 0
je 0x1003ae2b
test esi, esi
je 0x1003ae2b
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1003ae2b
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x5c], eax
mov edi, dword [eax]
cmp edi, eax
je 0x1003ae2b
cmp edi, dword [esi + 0xc4]
jne 0x1003ade2
call fcn.1008abff
mov eax, dword [edi + 8]
mov dword [ebp - 0x50], eax
test eax, eax
je 0x1003ae17
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x1003adf7
mov ecx, dword [ecx]
cmp dword [ebp - 0x98], 0xf
lea eax, [ebp - 0xac]
cmova eax, dword [ebp - 0xac]
push eax
push ecx
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x1003ae65
cmp edi, dword [esi + 0xc4]
jne 0x1003ae24
call fcn.1008abff
mov edi, dword [edi]
cmp edi, dword [ebp - 0x5c]
jne 0x1003add5
xor eax, eax
mov ecx, dword [ebp - 0x60]
mov dword [ecx + 0x2c], eax
mov ecx, dword [ebp - 0x98]
cmp ecx, 0xf
jbe 0x1003ae74
mov edx, dword [ebp - 0xac]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1003ae6a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x1003aef3
jmp 0x1003ae6a
mov eax, dword [ebp - 0x50]
jmp 0x1003ae2d
push ecx
push edx
call fcn.100859f6
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.10085995
mov esp, ebp
pop ebp
ret
call fcn.1008ac0f
call fcn.1008ac0f
call fcn.1008ac0f
call fcn.1008ac0f
call fcn.1008ac0f
call fcn.1008ac0f
call fcn.1008ac0f
call fcn.1008ac0f
call fcn.1008ac0f
call fcn.1008ac0f
call fcn.1008ac0f
call fcn.1008ac0f
call fcn.1008ac0f
call fcn.1008ac0f
call fcn.1008ac0f
call fcn.1008ac0f
call fcn.1008ac0f
call fcn.1008ac0f
call fcn.1008ac0f
call fcn.1008ac0f
call fcn.1008ac0f
int3