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

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1009d525
mov eax, dword fs:[0]
push eax
sub esp, 0xa0
mov eax, dword [0x100b7040]
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.10033380
mov dl, 0x1f
mov dword [ebp - 0x40], 0x706d781f
mov dword [ebp - 0x3c], 0x70406f6a
xor ecx, ecx
mov dword [ebp - 0x38], 0x70766b6f
mov word [ebp - 0x34], 0x71
lea eax, [ebp - 0x3f]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0xc
jae 0x1002f487
mov dl, byte [ebp - 0x40]
jmp 0x1002f476
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 0x1002f4b0
sub ecx, edx
lea eax, [ebp - 0x3f]
push ecx
push eax
lea ecx, [ebp - 0x94]
call fcn.10002580
cmp dword [ebp - 0x84], 0
mov edi, dword [esi + 0x30]
je 0x1002f548
test edi, edi
je 0x1002f548
push 4
push edi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1002f548
mov eax, dword [edi + 0xc4]
mov dword [ebp - 0x58], eax
mov esi, dword [eax]
cmp esi, eax
je 0x1002f548
cmp esi, dword [edi + 0xc4]
jne 0x1002f502
call fcn.1008625f
mov eax, dword [esi + 8]
mov dword [ebp - 0x64], eax
test eax, eax
je 0x1002f534
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x1002f517
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 0x1002f57c
cmp esi, dword [edi + 0xc4]
jne 0x1002f541
call fcn.1008625f
mov esi, dword [esi]
cmp esi, dword [ebp - 0x58]
jne 0x1002f4f5
xor esi, esi
mov dword [ebp - 0x64], esi
mov ecx, dword [ebp - 0x80]
cmp ecx, 0xf
jbe 0x1002f58b
mov edx, dword [ebp - 0x94]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1002f581
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10030f7f
jmp 0x1002f581
mov esi, dword [ebp - 0x64]
jmp 0x1002f54d
push ecx
push edx
call fcn.100810d6
add esp, 8
movaps xmm0, xmmword [0x100afa50]
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], 0x7367757c
mov word [ebp - 0x34], 0x7775
mov byte [ebp - 0x32], 0
mov al, byte [ebp - 0x48]
xor byte [ebp + ecx - 0x47], al
inc ecx
cmp ecx, 0x15
jb 0x1002f5c1
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 0x1002f5f0
sub ecx, edx
lea eax, [ebp - 0x47]
push ecx
push eax
lea ecx, [ebp - 0x7c]
call fcn.10002580
cmp dword [ebp - 0x6c], 0
je 0x1002f67d
test esi, esi
je 0x1002f67d
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1002f67d
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x58], eax
mov edi, dword [eax]
cmp edi, eax
je 0x1002f67d
nop dword [eax]
cmp edi, dword [esi + 0xc4]
jne 0x1002f63d
call fcn.1008625f
mov esi, dword [edi + 8]
test esi, esi
je 0x1002f666
cmp dword [esi + 0x78], 0x10
lea ecx, [esi + 0x64]
jb 0x1002f64f
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 0x1002f67f
mov esi, dword [ebp - 0x64]
cmp edi, dword [esi + 0xc4]
jne 0x1002f676
call fcn.1008625f
mov edi, dword [edi]
cmp edi, dword [ebp - 0x58]
jne 0x1002f630
xor esi, esi
mov ecx, dword [ebp - 0x68]
cmp ecx, 0xf
jbe 0x1002f6b3
mov edx, dword [ebp - 0x7c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1002f6a9
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10030f84
push ecx
push edx
call fcn.100810d6
add esp, 8
movaps xmm0, xmmword [str._ISbNVTQQbOX_]
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 0x1002f6d2
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 0x1002f700
sub ecx, edx
lea eax, [ebp - 0x43]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.10002580
cmp dword [ebp - 0x18], 0
je 0x1002f78d
test esi, esi
je 0x1002f78d
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1002f78d
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x58], eax
mov edi, dword [eax]
cmp edi, eax
je 0x1002f78d
nop dword [eax]
cmp edi, dword [esi + 0xc4]
jne 0x1002f74d
call fcn.1008625f
mov eax, dword [edi + 8]
mov dword [ebp - 0x50], eax
test eax, eax
je 0x1002f779
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x1002f762
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 0x1002f7c0
cmp edi, dword [esi + 0xc4]
jne 0x1002f786
call fcn.1008625f
mov edi, dword [edi]
cmp edi, dword [ebp - 0x58]
jne 0x1002f740
xor eax, eax
mov ecx, dword [ebp - 0x60]
mov dword [ecx], eax
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x1002f7cf
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1002f7c5
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10030f89
jmp 0x1002f7c5
mov eax, dword [ebp - 0x50]
jmp 0x1002f78f
push ecx
push edx
call fcn.100810d6
add esp, 8
mov eax, dword [ebp - 0x60]
cmp dword [eax], 0
je 0x1002f7e5
cmp dword [0x100b8fac], 1
sete byte [0x100baa82]
movaps xmm0, xmmword [0x100aee60]
xor ecx, ecx
movups xmmword [ebp - 0x48], xmm0
mov dword [ebp - 0x38], 0x71016
nop dword [eax]
mov al, byte [ebp - 0x48]
xor byte [ebp + ecx - 0x47], al
inc ecx
cmp ecx, 0x12
jb 0x1002f800
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 0x1002f830
sub ecx, edx
lea eax, [ebp - 0x47]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.10002580
cmp dword [ebp - 0x18], 0
je 0x1002f8bd
test esi, esi
je 0x1002f8bd
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1002f8bd
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x50], eax
mov edi, dword [eax]
cmp edi, eax
je 0x1002f8bd
nop dword [eax]
cmp edi, dword [esi + 0xc4]
jne 0x1002f87d
call fcn.1008625f
mov eax, dword [edi + 8]
mov dword [ebp - 0x58], eax
test eax, eax
je 0x1002f8a9
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x1002f892
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 0x1002f8f1
cmp edi, dword [esi + 0xc4]
jne 0x1002f8b6
call fcn.1008625f
mov edi, dword [edi]
cmp edi, dword [ebp - 0x50]
jne 0x1002f870
xor eax, eax
mov ecx, dword [ebp - 0x60]
mov dword [ecx + 4], eax
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x1002f900
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1002f8f6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10030f8e
jmp 0x1002f8f6
mov eax, dword [ebp - 0x58]
jmp 0x1002f8bf
push ecx
push edx
call fcn.100810d6
add esp, 8
movaps xmm0, xmmword [0x100afa00]
xor ecx, ecx
movups xmmword [ebp - 0x48], xmm0
mov dword [ebp - 0x38], 0x657f647e
mov byte [ebp - 0x34], 0
mov al, byte [ebp - 0x48]
xor byte [ebp + ecx - 0x47], al
inc ecx
cmp ecx, 0x13
jb 0x1002f918
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 0x1002f944
sub ecx, edx
lea eax, [ebp - 0x47]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.10002580
cmp dword [ebp - 0x18], 0
je 0x1002f9cd
test esi, esi
je 0x1002f9cd
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1002f9cd
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x50], eax
mov edi, dword [eax]
cmp edi, eax
je 0x1002f9cd
cmp edi, dword [esi + 0xc4]
jne 0x1002f98d
call fcn.1008625f
mov eax, dword [edi + 8]
mov dword [ebp - 0x58], eax
test eax, eax
je 0x1002f9b9
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x1002f9a2
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 0x1002fa01
cmp edi, dword [esi + 0xc4]
jne 0x1002f9c6
call fcn.1008625f
mov edi, dword [edi]
cmp edi, dword [ebp - 0x50]
jne 0x1002f980
xor eax, eax
mov ecx, dword [ebp - 0x60]
mov dword [ecx + 0x34], eax
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x1002fa10
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1002fa06
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10030f93
jmp 0x1002fa06
mov eax, dword [ebp - 0x58]
jmp 0x1002f9cf
push ecx
push edx
call fcn.100810d6
add esp, 8
mov eax, dword [ebp - 0x60]
mov edi, dword [eax + 0x34]
test edi, edi
je 0x1002fa4c
push 4
push edi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1002fa4c
mov edi, dword [edi + 0x124]
test edi, edi
je 0x1002fa4c
push 4
push edi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1002fa4c
push 0x1388
push eax
mov ecx, edi
call dword [0x100ae560]
movaps xmm0, xmmword [0x100af200]
xor ecx, ecx
movups xmmword [ebp - 0x44], xmm0
mov word [ebp - 0x34], 0x3e
nop
mov al, byte [ebp - 0x44]
xor byte [ebp + ecx - 0x43], al
inc ecx
cmp ecx, 0x10
jb 0x1002fa60
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 0x1002fa90
sub ecx, edx
lea eax, [ebp - 0x43]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.10002580
cmp dword [ebp - 0x18], 0
je 0x1002fb1d
test esi, esi
je 0x1002fb1d
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1002fb1d
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x50], eax
mov edi, dword [eax]
cmp edi, eax
je 0x1002fb1d
nop dword [eax]
cmp edi, dword [esi + 0xc4]
jne 0x1002fadd
call fcn.1008625f
mov eax, dword [edi + 8]
mov dword [ebp - 0x58], eax
test eax, eax
je 0x1002fb09
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x1002faf2
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 0x1002fb51
cmp edi, dword [esi + 0xc4]
jne 0x1002fb16
call fcn.1008625f
mov edi, dword [edi]
cmp edi, dword [ebp - 0x50]
jne 0x1002fad0
xor eax, eax
mov edi, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x14]
mov dword [edi + 0x38], eax
cmp ecx, 0xf
jbe 0x1002fb60
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1002fb56
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10030f98
jmp 0x1002fb56
mov eax, dword [ebp - 0x58]
jmp 0x1002fb1f
push ecx
push edx
call fcn.100810d6
add esp, 8
mov edi, dword [edi + 0x38]
test edi, edi
je 0x1002fb96
push 4
push edi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1002fb96
mov edi, dword [edi + 0x124]
test edi, edi
je 0x1002fb96
push 4
push edi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1002fb96
push 0x17
push eax
mov ecx, edi
call dword [0x100ae560]
mov dl, 0x7a
mov dword [ebp - 0x40], 0xe020e7a
mov dword [ebp - 0x3c], 0x171b1d25
xor ecx, ecx
mov dword [ebp - 0x38], 0x130e251f
mov word [ebp - 0x34], 0x1f17
mov byte [ebp - 0x32], 0
nop dword [eax]
lea eax, [ebp - 0x3f]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0xd
jae 0x1002fbd1
mov dl, byte [ebp - 0x40]
jmp 0x1002fbc0
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 0x1002fbf0
sub ecx, edx
lea eax, [ebp - 0x3f]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.10002580
cmp dword [ebp - 0x18], 0
je 0x1002fc7d
test esi, esi
je 0x1002fc7d
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1002fc7d
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x50], eax
mov edi, dword [eax]
cmp edi, eax
je 0x1002fc7d
nop dword [eax]
cmp edi, dword [esi + 0xc4]
jne 0x1002fc3d
call fcn.1008625f
mov eax, dword [edi + 8]
mov dword [ebp - 0x58], eax
test eax, eax
je 0x1002fc69
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x1002fc52
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 0x1002fcb1
cmp edi, dword [esi + 0xc4]
jne 0x1002fc76
call fcn.1008625f
mov edi, dword [edi]
cmp edi, dword [ebp - 0x50]
jne 0x1002fc30
xor eax, eax
mov ecx, dword [ebp - 0x60]
mov dword [ecx + 0x3c], eax
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x1002fcc0
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1002fcb6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10030f9d
jmp 0x1002fcb6
mov eax, dword [ebp - 0x58]
jmp 0x1002fc7f
push ecx
push edx
call fcn.100810d6
add esp, 8
movaps xmm0, xmmword [0x100af4a0]
xor ecx, ecx
movups xmmword [ebp - 0x48], xmm0
mov dword [ebp - 0x38], 0x594e484b
mov byte [ebp - 0x34], 0
mov al, byte [ebp - 0x48]
xor byte [ebp + ecx - 0x47], al
inc ecx
cmp ecx, 0x13
jb 0x1002fcd8
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 0x1002fd04
sub ecx, edx
lea eax, [ebp - 0x47]
push ecx
push eax
lea ecx, [ebp - 0x7c]
call fcn.10002580
cmp dword [ebp - 0x6c], 0
je 0x1002fd90
mov esi, dword [ebp - 0x64]
test esi, esi
je 0x1002fd90
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1002fd90
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x50], eax
mov edi, dword [eax]
cmp edi, eax
je 0x1002fd90
cmp edi, dword [esi + 0xc4]
jne 0x1002fd50
call fcn.1008625f
mov esi, dword [edi + 8]
test esi, esi
je 0x1002fd79
cmp dword [esi + 0x78], 0x10
lea ecx, [esi + 0x64]
jb 0x1002fd62
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 0x1002fd92
mov esi, dword [ebp - 0x64]
cmp edi, dword [esi + 0xc4]
jne 0x1002fd89
call fcn.1008625f
mov edi, dword [edi]
cmp edi, dword [ebp - 0x50]
jne 0x1002fd43
xor esi, esi
mov ecx, dword [ebp - 0x68]
cmp ecx, 0xf
jbe 0x1002fdc6
mov edx, dword [ebp - 0x7c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1002fdbc
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10030fa2
push ecx
push edx
call fcn.100810d6
add esp, 8
movaps xmm0, xmmword [0x100af9b0]
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], 0x666464
nop dword [eax]
mov al, byte [ebp - 0x48]
xor byte [ebp + ecx - 0x47], al
inc ecx
cmp ecx, 0x12
jb 0x1002fdf0
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 0x1002fe20
sub ecx, edx
lea eax, [ebp - 0x47]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.10002580
cmp dword [ebp - 0x18], 0
je 0x1002fead
test esi, esi
je 0x1002fead
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1002fead
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x50], eax
mov edi, dword [eax]
cmp edi, eax
je 0x1002fead
nop dword [eax]
cmp edi, dword [esi + 0xc4]
jne 0x1002fe6d
call fcn.1008625f
mov eax, dword [edi + 8]
mov dword [ebp - 0x58], eax
test eax, eax
je 0x1002fe99
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x1002fe82
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 0x1002fee1
cmp edi, dword [esi + 0xc4]
jne 0x1002fea6
call fcn.1008625f
mov edi, dword [edi]
cmp edi, dword [ebp - 0x50]
jne 0x1002fe60
xor eax, eax
mov ecx, dword [ebp - 0x60]
mov dword [ecx + 0x40], eax
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x1002fef0
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1002fee6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10030fa7
jmp 0x1002fee6
mov eax, dword [ebp - 0x58]
jmp 0x1002feaf
push ecx
push edx
call fcn.100810d6
add esp, 8
movaps xmm0, xmmword [0x100aecd0]
xor ecx, ecx
movups xmmword [ebp - 0x44], xmm0
mov word [ebp - 0x34], 0xf0d
mov byte [ebp - 0x32], 0
mov al, byte [ebp - 0x44]
xor byte [ebp + ecx - 0x43], al
inc ecx
cmp ecx, 0x11
jb 0x1002ff07
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 0x1002ff33
sub ecx, edx
lea eax, [ebp - 0x43]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.10002580
cmp dword [ebp - 0x18], 0
je 0x1002ffbd
test esi, esi
je 0x1002ffbd
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1002ffbd
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x50], eax
mov edi, dword [eax]
cmp edi, eax
je 0x1002ffbd
nop
cmp edi, dword [esi + 0xc4]
jne 0x1002ff7d
call fcn.1008625f
mov eax, dword [edi + 8]
mov dword [ebp - 0x58], eax
test eax, eax
je 0x1002ffa9
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x1002ff92
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 0x1002fff1
cmp edi, dword [esi + 0xc4]
jne 0x1002ffb6
call fcn.1008625f
mov edi, dword [edi]
cmp edi, dword [ebp - 0x50]
jne 0x1002ff70
xor eax, eax
mov ecx, dword [ebp - 0x60]
mov dword [ecx + 0x44], eax
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x10030000
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1002fff6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10030fac
jmp 0x1002fff6
mov eax, dword [ebp - 0x58]
jmp 0x1002ffbf
push ecx
push edx
call fcn.100810d6
add esp, 8
mov eax, dword [ebp - 0x60]
mov edi, dword [eax + 0x40]
test edi, edi
je 0x10030039
push 4
push edi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x10030039
mov edi, dword [edi + 0x124]
test edi, edi
je 0x10030039
push 4
push edi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x10030039
push 0xa
push eax
mov ecx, edi
call dword [0x100ae560]
mov dl, 0x3c
mov dword [ebp - 0x40], 0x52485e3c
mov dword [ebp - 0x3c], 0x5d484f63
xor ecx, ecx
mov dword [ebp - 0x38], 0x48635948
mov word [ebp - 0x34], 0x4c
lea eax, [ebp - 0x3f]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0xc
jae 0x10030069
mov dl, byte [ebp - 0x40]
jmp 0x10030058
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 0x10030088
sub ecx, edx
lea eax, [ebp - 0x3f]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.10002580
cmp dword [ebp - 0x18], 0
je 0x10030111
test esi, esi
je 0x10030111
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x10030111
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x50], eax
mov edi, dword [eax]
cmp edi, eax
je 0x10030111
cmp edi, dword [esi + 0xc4]
jne 0x100300d1
call fcn.1008625f
mov eax, dword [edi + 8]
mov dword [ebp - 0x58], eax
test eax, eax
je 0x100300fd
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x100300e6
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 0x10030145
cmp edi, dword [esi + 0xc4]
jne 0x1003010a
call fcn.1008625f
mov edi, dword [edi]
cmp edi, dword [ebp - 0x50]
jne 0x100300c4
xor eax, eax
mov esi, dword [ebp - 0x60]
mov ecx, dword [ebp - 0x14]
mov dword [esi + 8], eax
cmp ecx, 0xf
jbe 0x10030154
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x1003014a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10030fb1
jmp 0x1003014a
mov eax, dword [ebp - 0x58]
jmp 0x10030113
push ecx
push edx
call fcn.100810d6
add esp, 8
cmp dword [esi + 8], 0
je 0x100302cd
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.1000b570
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 0x100301e2
mov edi, dword [ebp - 0x20]
inc edi
cmp esi, edi
jae 0x100301d2
mov eax, dword [ebp - 0x14]
sub eax, ecx
cmp edi, eax
jbe 0x100301bb
push ecx
push edi
lea ecx, [ebp - 0x1c]
call fcn.1000b620
jmp 0x100301cf
sub edi, esi
push edi
push 0
push edx
lea esi, [edx + edi]
call fcn.100831e0
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 0x10030239
mov edi, dword [ebp - 0x20]
inc edi
cmp esi, edi
jae 0x10030229
mov eax, dword [ebp - 0x14]
sub eax, ecx
cmp edi, eax
jbe 0x10030212
push ecx
push edi
lea ecx, [ebp - 0x1c]
call fcn.1000b620
jmp 0x10030226
sub edi, esi
push edi
push 0
push edx
lea esi, [edi + edx]
call fcn.100831e0
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 [0x100b8fa8]
mov esi, edx
sub esi, ecx
mov byte [ebp - 0x51], al
cmp esi, 0x989680
ja 0x10030293
mov edi, dword [ebp - 0x20]
inc edi
cmp esi, edi
jae 0x10030281
mov eax, dword [ebp - 0x14]
sub eax, ecx
cmp edi, eax
jbe 0x1003026a
push ecx
push edi
lea ecx, [ebp - 0x1c]
call fcn.1000b620
jmp 0x1003027e
sub edi, esi
push edi
push 0
push edx
lea esi, [edi + edx]
call fcn.100831e0
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 0x100302be
mov eax, dword [0x100baa44]
mov dword [ebp - 0x5c], eax
mov ecx, dword ds:[0x100a9050]
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.1000b7c0
movaps xmm0, xmmword [0x100afc40]
xor ecx, ecx
movups xmmword [ebp - 0x48], xmm0
mov dword [ebp - 0x38], 0x7e79647f
mov word [ebp - 0x34], 0x77
mov al, byte [ebp - 0x48]
xor byte [ebp + ecx - 0x47], al
inc ecx
cmp ecx, 0x14
jb 0x100302e7
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 0x10030313
sub ecx, edx
lea eax, [ebp - 0x47]
push ecx
push eax
lea ecx, [ebp - 0x7c]
call fcn.10002580
cmp dword [ebp - 0x6c], 0
je 0x1003039f
mov esi, dword [ebp - 0x64]
test esi, esi
je 0x1003039f
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1003039f
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x5c], eax
mov edi, dword [eax]
cmp edi, eax
je 0x1003039f
cmp edi, dword [esi + 0xc4]
jne 0x1003035f
call fcn.1008625f
mov esi, dword [edi + 8]
test esi, esi
je 0x10030388
cmp dword [esi + 0x78], 0x10
lea ecx, [esi + 0x64]
jb 0x10030371
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 0x100303a1
mov esi, dword [ebp - 0x64]
cmp edi, dword [esi + 0xc4]
jne 0x10030398
call fcn.1008625f
mov edi, dword [edi]
cmp edi, dword [ebp - 0x5c]
jne 0x10030352
xor esi, esi
mov ecx, dword [ebp - 0x68]
cmp ecx, 0xf
jbe 0x100303d5
mov edx, dword [ebp - 0x7c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100303cb
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10030fb6
push ecx
push edx
call fcn.100810d6
add esp, 8
mov byte [ebp - 0x40], 0xd
mov cl, 0x79
xor cl, byte [ebp - 0x40]
mov al, 0x6f
xor al, byte [ebp - 0x40]
mov dl, 0x63
mov byte [ebp - 0x3f], al
mov ch, 0x7a
mov byte [ebp - 0x3e], cl
mov dh, 0x68
mov cl, byte [ebp - 0x40]
mov ah, 0x52
mov byte [ebp - 0x51], 0x6c
xor ch, cl
mov al, byte [ebp - 0x51]
xor dh, cl
xor al, cl
mov byte [ebp - 0x49], 0x7d
mov byte [ebp - 0x39], al
xor ah, cl
mov al, byte [ebp - 0x49]
xorps xmm0, xmm0
xor al, cl
mov byte [ebp - 0x2d], 0x62
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 0x10030470
sub ecx, edx
lea eax, [ebp - 0x3f]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.10002580
cmp dword [ebp - 0x18], 0
je 0x100304fd
test esi, esi
je 0x100304fd
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x100304fd
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x5c], eax
mov edi, dword [eax]
cmp edi, eax
je 0x100304fd
nop dword [eax]
cmp edi, dword [esi + 0xc4]
jne 0x100304bd
call fcn.1008625f
mov eax, dword [edi + 8]
mov dword [ebp - 0x50], eax
test eax, eax
je 0x100304e9
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x100304d2
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 0x10030531
cmp edi, dword [esi + 0xc4]
jne 0x100304f6
call fcn.1008625f
mov edi, dword [edi]
cmp edi, dword [ebp - 0x5c]
jne 0x100304b0
xor eax, eax
mov ecx, dword [ebp - 0x60]
mov dword [ecx + 0xc], eax
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x10030540
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10030536
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10030fbb
jmp 0x10030536
mov eax, dword [ebp - 0x50]
jmp 0x100304ff
push ecx
push edx
call fcn.100810d6
add esp, 8
mov byte [ebp - 0x3c], 0x65
mov cl, 0x11
xor cl, byte [ebp - 0x3c]
mov al, 7
xor al, byte [ebp - 0x3c]
mov dh, 0x17
mov byte [ebp - 0x3b], al
mov ch, 4
mov byte [ebp - 0x3a], cl
mov dl, 0xb
mov cl, byte [ebp - 0x3c]
mov ah, 0x3a
mov byte [ebp - 0x2e], 8
xor dl, cl
mov al, byte [ebp - 0x2e]
xor ch, cl
xor al, cl
mov byte [ebp - 0x2d], 0xa
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 0x100305c0
sub ecx, edx
lea eax, [ebp - 0x3b]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.10002580
cmp dword [ebp - 0x18], 0
je 0x1003064d
test esi, esi
je 0x1003064d
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1003064d
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x5c], eax
mov edi, dword [eax]
cmp edi, eax
je 0x1003064d
nop dword [eax]
cmp edi, dword [esi + 0xc4]
jne 0x1003060d
call fcn.1008625f
mov eax, dword [edi + 8]
mov dword [ebp - 0x50], eax
test eax, eax
je 0x10030639
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x10030622
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 0x10030681
cmp edi, dword [esi + 0xc4]
jne 0x10030646
call fcn.1008625f
mov edi, dword [edi]
cmp edi, dword [ebp - 0x5c]
jne 0x10030600
xor eax, eax
mov ecx, dword [ebp - 0x60]
mov dword [ecx + 0x10], eax
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x10030690
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10030686
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10030fc0
jmp 0x10030686
mov eax, dword [ebp - 0x50]
jmp 0x1003064f
push ecx
push edx
call fcn.100810d6
add esp, 8
mov dl, 0x2d
mov dword [ebp - 0x40], 0x43594f2d
mov dword [ebp - 0x3c], 0x4e4e4c72
xor ecx, ecx
mov dword [ebp - 0x38], 0x425e5e48
mov word [ebp - 0x34], 0x545f
mov byte [ebp - 0x32], 0
lea eax, [ebp - 0x3f]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0xd
jae 0x100306c4
mov dl, byte [ebp - 0x40]
jmp 0x100306b3
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 0x100306e3
sub ecx, edx
lea eax, [ebp - 0x3f]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.10002580
cmp dword [ebp - 0x18], 0
je 0x1003076d
test esi, esi
je 0x1003076d
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x1003076d
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x5c], eax
mov edi, dword [eax]
cmp edi, eax
je 0x1003076d
nop
cmp edi, dword [esi + 0xc4]
jne 0x1003072d
call fcn.1008625f
mov eax, dword [edi + 8]
mov dword [ebp - 0x50], eax
test eax, eax
je 0x10030759
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x10030742
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 0x100307a1
cmp edi, dword [esi + 0xc4]
jne 0x10030766
call fcn.1008625f
mov edi, dword [edi]
cmp edi, dword [ebp - 0x5c]
jne 0x10030720
xor eax, eax
mov ecx, dword [ebp - 0x60]
mov dword [ecx + 0x14], eax
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x100307b0
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100307a6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10030fc5
jmp 0x100307a6
mov eax, dword [ebp - 0x50]
jmp 0x1003076f
push ecx
push edx
call fcn.100810d6
add esp, 8
mov byte [ebp - 0x40], 0x36
mov cl, 0x42
xor cl, byte [ebp - 0x40]
mov al, 0x54
xor al, byte [ebp - 0x40]
mov dl, 0x58
mov byte [ebp - 0x3f], al
mov ch, dl
mov byte [ebp - 0x3e], cl
mov dh, 0x59
mov cl, byte [ebp - 0x40]
mov ah, 0x69
mov byte [ebp - 0x2e], 0x44
xor dl, cl
mov al, byte [ebp - 0x2e]
xor ch, cl
xor al, cl
mov byte [ebp - 0x2d], 0x5b
mov byte [ebp - 0x39], al
xor dh, cl
mov al, byte [ebp - 0x2d]
xor ah, cl
xor al, cl
mov byte [ebp - 0x49], 0x57
mov byte [ebp - 0x38], al
xorps xmm0, xmm0
mov al, byte [ebp - 0x49]
xor al, cl
mov byte [ebp - 0x51], 0x5a
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 0x10030836
sub ecx, edx
lea eax, [ebp - 0x3f]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.10002580
cmp dword [ebp - 0x18], 0
je 0x100308bf
test esi, esi
je 0x100308bf
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x100308bf
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x5c], eax
mov edi, dword [eax]
cmp edi, eax
je 0x100308bf
cmp edi, dword [esi + 0xc4]
jne 0x1003087f
call fcn.1008625f
mov eax, dword [edi + 8]
mov dword [ebp - 0x50], eax
test eax, eax
je 0x100308ab
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x10030894
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 0x100308f3
cmp edi, dword [esi + 0xc4]
jne 0x100308b8
call fcn.1008625f
mov edi, dword [edi]
cmp edi, dword [ebp - 0x5c]
jne 0x10030872
xor eax, eax
mov ecx, dword [ebp - 0x60]
mov dword [ecx + 0x18], eax
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x10030902
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x100308f8
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10030fca
jmp 0x100308f8
mov eax, dword [ebp - 0x50]
jmp 0x100308c1
push ecx
push edx
call fcn.100810d6
add esp, 8
mov byte [ebp - 0x3c], 0x51
mov cl, 0x25
xor cl, byte [ebp - 0x3c]
mov al, 0x33
xor al, byte [ebp - 0x3c]
mov ch, 0x3c
mov byte [ebp - 0x3b], al
mov dl, 0x3f
mov byte [ebp - 0x3a], cl
mov dh, 0x30
mov cl, byte [ebp - 0x3c]
mov ah, 0xe
mov byte [ebp - 0x2e], 0x36
xor dl, cl
mov al, byte [ebp - 0x2e]
xor ch, cl
xor al, cl
mov byte [ebp - 0x2d], 0x38
mov byte [ebp - 0x35], al
xor dh, cl
mov al, byte [ebp - 0x2d]
xor ah, cl
xor al, cl
mov byte [ebp - 0x49], 0x32
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 0x10030980
sub ecx, edx
lea eax, [ebp - 0x3b]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.10002580
cmp dword [ebp - 0x18], 0
je 0x10030a0d
test esi, esi
je 0x10030a0d
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x10030a0d
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x5c], eax
mov edi, dword [eax]
cmp edi, eax
je 0x10030a0d
nop dword [eax]
cmp edi, dword [esi + 0xc4]
jne 0x100309cd
call fcn.1008625f
mov eax, dword [edi + 8]
mov dword [ebp - 0x50], eax
test eax, eax
je 0x100309f9
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x100309e2
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 0x10030a41
cmp edi, dword [esi + 0xc4]
jne 0x10030a06
call fcn.1008625f
mov edi, dword [edi]
cmp edi, dword [ebp - 0x5c]
jne 0x100309c0
xor eax, eax
mov ecx, dword [ebp - 0x60]
mov dword [ecx + 0x1c], eax
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x10030a50
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10030a46
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10030fcf
jmp 0x10030a46
mov eax, dword [ebp - 0x50]
jmp 0x10030a0f
push ecx
push edx
call fcn.100810d6
add esp, 8
mov byte [ebp - 0x3c], 0x3d
mov cl, 0x49
xor cl, byte [ebp - 0x3c]
mov al, 0x5f
xor al, byte [ebp - 0x3c]
mov ch, 0x4f
mov byte [ebp - 0x3b], al
mov dl, 0x53
mov byte [ebp - 0x2e], ch
mov dh, 0x5c
mov al, byte [ebp - 0x2e]
mov ah, 0x62
mov byte [ebp - 0x3a], cl
xorps xmm0, xmm0
mov cl, byte [ebp - 0x3c]
xor al, cl
mov byte [ebp - 0x2d], 0x58
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 0x10030ac0
sub ecx, edx
lea eax, [ebp - 0x3b]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.10002580
cmp dword [ebp - 0x18], 0
je 0x10030b4d
test esi, esi
je 0x10030b4d
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x10030b4d
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x5c], eax
mov edi, dword [eax]
cmp edi, eax
je 0x10030b4d
nop dword [eax]
cmp edi, dword [esi + 0xc4]
jne 0x10030b0d
call fcn.1008625f
mov eax, dword [edi + 8]
mov dword [ebp - 0x50], eax
test eax, eax
je 0x10030b39
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x10030b22
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 0x10030b81
cmp edi, dword [esi + 0xc4]
jne 0x10030b46
call fcn.1008625f
mov edi, dword [edi]
cmp edi, dword [ebp - 0x5c]
jne 0x10030b00
xor eax, eax
mov ecx, dword [ebp - 0x60]
mov dword [ecx + 0x20], eax
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x10030b90
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10030b86
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10030fd4
jmp 0x10030b86
mov eax, dword [ebp - 0x50]
jmp 0x10030b4f
push ecx
push edx
call fcn.100810d6
add esp, 8
mov dl, 0x5d
mov dword [ebp - 0x40], 0x33293f5d
mov dword [ebp - 0x3c], 0x3a2d2802
xor ecx, ecx
mov dword [ebp - 0x38], 0x38393c2f
mov byte [ebp - 0x34], 0
nop dword [eax]
lea eax, [ebp - 0x3f]
xor byte [eax + ecx], dl
inc ecx
cmp ecx, 0xb
jae 0x10030bc1
mov dl, byte [ebp - 0x40]
jmp 0x10030bb0
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 0x10030be0
sub ecx, edx
lea eax, [ebp - 0x3f]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.10002580
cmp dword [ebp - 0x18], 0
je 0x10030c6d
test esi, esi
je 0x10030c6d
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x10030c6d
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x5c], eax
mov edi, dword [eax]
cmp edi, eax
je 0x10030c6d
nop dword [eax]
cmp edi, dword [esi + 0xc4]
jne 0x10030c2d
call fcn.1008625f
mov eax, dword [edi + 8]
mov dword [ebp - 0x50], eax
test eax, eax
je 0x10030c59
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x10030c42
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 0x10030ca1
cmp edi, dword [esi + 0xc4]
jne 0x10030c66
call fcn.1008625f
mov edi, dword [edi]
cmp edi, dword [ebp - 0x5c]
jne 0x10030c20
xor eax, eax
mov ecx, dword [ebp - 0x60]
mov dword [ecx + 0x24], eax
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x10030cb0
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10030ca6
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10030fd9
jmp 0x10030ca6
mov eax, dword [ebp - 0x50]
jmp 0x10030c6f
push ecx
push edx
call fcn.100810d6
add esp, 8
mov byte [ebp - 0x40], 0x5d
mov cl, 0x29
xor cl, byte [ebp - 0x40]
mov al, 0x3f
xor al, byte [ebp - 0x40]
mov ch, 0x28
mov byte [ebp - 0x3f], al
mov dl, 0x33
mov byte [ebp - 0x3e], cl
mov dh, dl
mov cl, byte [ebp - 0x40]
mov ah, 2
mov byte [ebp - 0x2e], 0x34
xor dl, cl
mov al, byte [ebp - 0x2e]
xor dh, cl
xor al, cl
mov byte [ebp - 0x2d], 0x2c
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], 0x38
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 0x10030d35
sub ecx, edx
lea eax, [ebp - 0x3f]
push ecx
push eax
lea ecx, [ebp - 0x28]
call fcn.10002580
cmp dword [ebp - 0x18], 0
je 0x10030dbe
test esi, esi
je 0x10030dbe
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x10030dbe
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x5c], eax
mov edi, dword [eax]
cmp edi, eax
je 0x10030dbe
cmp edi, dword [esi + 0xc4]
jne 0x10030d7e
call fcn.1008625f
mov eax, dword [edi + 8]
mov dword [ebp - 0x50], eax
test eax, eax
je 0x10030daa
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x10030d93
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 0x10030df2
cmp edi, dword [esi + 0xc4]
jne 0x10030db7
call fcn.1008625f
mov edi, dword [edi]
cmp edi, dword [ebp - 0x5c]
jne 0x10030d71
xor eax, eax
mov ecx, dword [ebp - 0x60]
mov dword [ecx + 0x28], eax
mov ecx, dword [ebp - 0x14]
cmp ecx, 0xf
jbe 0x10030e01
mov edx, dword [ebp - 0x28]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10030df7
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10030fde
jmp 0x10030df7
mov eax, dword [ebp - 0x50]
jmp 0x10030dc0
push ecx
push edx
call fcn.100810d6
add esp, 8
mov cl, 0x7a
mov byte [ebp - 0x3c], 0xe
mov byte [ebp - 0x49], cl
mov al, 0x6c
xor al, byte [ebp - 0x3c]
mov ch, 0x6d
xor cl, byte [ebp - 0x3c]
mov dl, 0x60
mov byte [ebp - 0x3b], al
mov dh, 0x7c
mov byte [ebp - 0x3a], cl
mov ah, 0x51
mov cl, byte [ebp - 0x3c]
xorps xmm0, xmm0
mov byte [ebp - 0x2e], 0x6f
xor dl, cl
mov al, byte [ebp - 0x2e]
xor ch, cl
xor al, cl
mov byte [ebp - 0x2d], 0x68
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 0x10030e83
sub ecx, edx
lea eax, [ebp - 0x3b]
push ecx
push eax
lea ecx, [ebp - 0xac]
call fcn.10002580
cmp dword [ebp - 0x9c], 0
je 0x10030f1b
test esi, esi
je 0x10030f1b
push 4
push esi
call dword [sym.imp.KERNEL32.dll_IsBadReadPtr]
test eax, eax
jne 0x10030f1b
mov eax, dword [esi + 0xc4]
mov dword [ebp - 0x5c], eax
mov edi, dword [eax]
cmp edi, eax
je 0x10030f1b
cmp edi, dword [esi + 0xc4]
jne 0x10030ed2
call fcn.1008625f
mov eax, dword [edi + 8]
mov dword [ebp - 0x50], eax
test eax, eax
je 0x10030f07
cmp dword [eax + 0x78], 0x10
lea ecx, [eax + 0x64]
jb 0x10030ee7
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 0x10030f55
cmp edi, dword [esi + 0xc4]
jne 0x10030f14
call fcn.1008625f
mov edi, dword [edi]
cmp edi, dword [ebp - 0x5c]
jne 0x10030ec5
xor eax, eax
mov ecx, dword [ebp - 0x60]
mov dword [ecx + 0x2c], eax
mov ecx, dword [ebp - 0x98]
cmp ecx, 0xf
jbe 0x10030f64
mov edx, dword [ebp - 0xac]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10030f5a
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
ja 0x10030fe3
jmp 0x10030f5a
mov eax, dword [ebp - 0x50]
jmp 0x10030f1d
push ecx
push edx
call fcn.100810d6
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.10081075
mov esp, ebp
pop ebp
ret
call fcn.1008626f
call fcn.1008626f
call fcn.1008626f
call fcn.1008626f
call fcn.1008626f
call fcn.1008626f
call fcn.1008626f
call fcn.1008626f
call fcn.1008626f
call fcn.1008626f
call fcn.1008626f
call fcn.1008626f
call fcn.1008626f
call fcn.1008626f
call fcn.1008626f
call fcn.1008626f
call fcn.1008626f
call fcn.1008626f
call fcn.1008626f
call fcn.1008626f
call fcn.1008626f
int3