Function at 0x1002d5dc
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x1008bd7b
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x22c
push esi
push edi
mov dword [ebp - 0x5c], 0x3ae35568
mov dword [ebp - 0x5c], 0
jmp 0x1002d613
mov eax, dword [ebp - 0x5c]
dec eax
mov dword [ebp - 0x5c], eax
cmp dword [ebp - 0x5c], 0xffffffee
jl 0x1002d644
mov dword [ebp - 0x130], 0x905d
push 0x3ca5
push 0xc5
push 1
call fcn.1002ce45
add esp, 0xc
cmp dword [ebp - 0x130], 0
je 0x1002d642
jmp 0x1002d644
jmp 0x1002d60c
and dword [ebp - 0x20c], 0
push 6
pop ecx
xor eax, eax
lea edi, [ebp - 0x208]
rep stosd dword es:[edi], eax
mov dword [ebp - 0xf0], 1
mov dword [ebp - 0x10], 0xa3c0bf90
mov dword [ebp - 0x124], 0xadf1adb2
mov dword [ebp - 0x12c], 0xffffffff
xor eax, eax
inc eax
je 0x1002d90f
cmp dword [ebp - 0xf0], 0
jne 0x1002d699
cmp dword [ebp - 0x10], 0
je 0x1002d90f
push 1
lea ecx, [ebp - 0xe0]
call fcn.10018816
and dword [ebp - 4], 0
mov dword [ebp - 0x9c], 0xffffffff
mov dword [ebp - 0x11c], 0xff846c8
mov dword [ebp - 0x1c], 0
jmp 0x1002d6ce
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 1
jge 0x1002d6ea
push dword [ebp - 0x1c]
lea ecx, [ebp - 0xe0]
call fcn.10018883
mov dword [eax], 2
jmp 0x1002d6c7
mov dword [ebp - 0x1c], 0
jmp 0x1002d6fa
mov eax, dword [ebp - 0x1c]
inc eax
mov dword [ebp - 0x1c], eax
cmp dword [ebp - 0x1c], 1
jge 0x1002d70d
mov eax, dword [ebp - 0x1c]
mov dword [ebp + eax*4 - 0x2c], 0xe008fb0b
jmp 0x1002d6f3
push 0
lea ecx, [ebp - 0xe0]
call fcn.10018883
push 4
pop ecx
imul ecx, ecx, 0
mov eax, dword [eax]
mov dword [ebp + ecx - 0x2c], eax
mov dword [ebp - 0x10], 0
jmp 0x1002d736
mov eax, dword [ebp - 0x10]
inc eax
mov dword [ebp - 0x10], eax
cmp dword [ebp - 0x10], 0
jg 0x1002d8fe
push dword [ebp - 0x10]
lea ecx, [ebp - 0xe0]
call fcn.10018883
push 4
pop ecx
imul ecx, ecx, 0
mov ecx, dword [ebp + ecx - 0x2c]
cmp dword [eax], ecx
jl 0x1002d768
mov dword [ebp - 0xb8], 1
jmp 0x1002d76f
and dword [ebp - 0xb8], 0
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0xb8]
mov dword [ebp + eax*4 - 0x2c], ecx
cmp dword [ebp - 0x10], 0
jne 0x1002d79d
push 0
lea ecx, [ebp - 0xe0]
call fcn.10018883
cmp dword [eax], 0
jne 0x1002d79d
and dword [ebp - 0x8c], 0
jmp 0x1002d7a7
mov dword [ebp - 0x8c], 1
push dword [ebp - 0x10]
lea ecx, [ebp - 0xe0]
call fcn.10018883
cmp dword [eax], 0
jne 0x1002d871
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0x124]
cmp dword [ebp + eax - 0x2c], ecx
jge 0x1002d7dc
mov dword [ebp - 0xf4], 1
jmp 0x1002d7e3
and dword [ebp - 0xf4], 0
mov eax, dword [ebp - 0x10]
mov eax, dword [ebp + eax*4 - 0x2c]
cmp dword [ebp - 0xf4], eax
jl 0x1002d7fe
mov dword [ebp - 0x84], 1
jmp 0x1002d805
and dword [ebp - 0x84], 0
push dword [ebp - 0x10]
lea ecx, [ebp - 0xe0]
call fcn.10018883
mov eax, dword [eax]
cmp eax, dword [ebp - 0x84]
jne 0x1002d829
mov dword [ebp - 0xbc], 1
jmp 0x1002d830
and dword [ebp - 0xbc], 0
push 4
pop eax
imul eax, eax, 0
mov ecx, dword [ebp - 0xbc]
sub ecx, dword [ebp + eax - 0x2c]
add ecx, 4
cmp ecx, dword [ebp - 0x12c]
jg 0x1002d854
mov dword [ebp - 0x70], 1
jmp 0x1002d858
and dword [ebp - 0x70], 0
mov eax, dword [ebp - 0x10]
mov ecx, dword [ebp - 0x70]
mov dword [ebp + eax*4 - 0x2c], ecx
cmp dword [ebp - 0x70], 0
jne 0x1002d871
and dword [ebp - 0xd4], 0
jmp 0x1002d87b
mov dword [ebp - 0xd4], 1
mov eax, dword [ebp - 0x8c]
cmp eax, dword [ebp - 0xd4]
jl 0x1002d895
mov dword [ebp - 0x94], 1
jmp 0x1002d89c
and dword [ebp - 0x94], 0
push dword [ebp - 0x10]
lea ecx, [ebp - 0xe0]
call fcn.10018883
mov ecx, dword [ebp - 0x94]
sub ecx, dword [eax]
jne 0x1002d8c1
xor eax, eax
jne 0x1002d8c1
and dword [ebp - 0xc4], 0
jmp 0x1002d8cb
mov dword [ebp - 0xc4], 1
mov eax, dword [ebp - 0xc4]
mov dword [ebp - 0x9c], eax
mov eax, dword [ebp - 0x9c]
mov dword [ebp - 0x1a8], eax
mov eax, dword [ebp - 0xf0]
mov dword [ebp - 0x1b0], eax
mov dword [ebp - 0x11c], 0x3c9e4a04
jmp 0x1002d72f
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0xe0]
call fcn.1001887e
jmp 0x1002d920
mov byte [ebp - 0x24], 0
lea eax, [ebp - 0x24]
push eax
push 1
call fcn.1002ce8f
pop ecx
pop ecx
push 0x1c
lea eax, [ebp - 0x20c]
push eax
push dword [ebp + 8]
push 0x2871
push 0x2415
call fcn.100277ad
pop ecx
pop ecx
call eax
test eax, eax
je 0x1002e1de
mov dword [ebp - 0x3c], 0xf6af1124
mov dword [ebp - 0xa4], 6
mov dword [ebp - 0x1b8], 0x2db785b6
mov dword [ebp - 0x1c0], 0xffffffff
mov dword [ebp - 0x48], 0
jmp 0x1002d97c
mov eax, dword [ebp - 0x48]
inc eax
mov dword [ebp - 0x48], eax
cmp dword [ebp - 0x48], 1
jge 0x1002d992
mov eax, dword [ebp - 0x48]
mov dword [ebp + eax*4 - 0x1c8], 0xe76d238e
jmp 0x1002d975
mov dword [ebp - 0x3c], 0x1a
jmp 0x1002d9a2
mov eax, dword [ebp - 0x3c]
dec eax
mov dword [ebp - 0x3c], eax
cmp dword [ebp - 0x3c], 0xffffffe3
jge 0x1002da7e
mov dword [ebp - 0x38], 0
mov dword [ebp - 0x110], 1
mov dword [ebp - 0x1d0], 0x14f98caf
mov dword [ebp - 0x1e8], 8
mov dword [ebp - 0x1f0], 4
mov dword [ebp - 0x1ec], 1
mov dword [ebp - 0x1a0], 0
mov dword [ebp - 0x19c], 0xffffffff
mov dword [ebp - 0xcc], 0xd8f9
mov dword [ebp - 0x50], 0
jmp 0x1002da13
mov eax, dword [ebp - 0x50]
inc eax
mov dword [ebp - 0x50], eax
cmp dword [ebp - 0x50], 4
jge 0x1002da29
mov eax, dword [ebp - 0x50]
mov dword [ebp + eax*4 - 0x238], 0xffffffff
jmp 0x1002da0c
mov dword [ebp - 0x38], 0
jmp 0x1002da39
mov eax, dword [ebp - 0x38]
inc eax
mov dword [ebp - 0x38], eax
cmp dword [ebp - 0x38], 8
je 0x1002da6c
lea eax, [ebp - 0x38]
push eax
lea eax, [ebp - 0xa4]
push eax
push 1
lea eax, [ebp - 0x110]
push eax
lea eax, [ebp - 0x3c]
push eax
call fcn.1002ced5
add esp, 0x14
cmp dword [ebp - 0xa4], 0
je 0x1002da6a
jmp 0x1002da6c
jmp 0x1002da32
mov eax, dword [ebp - 0xcc]
inc eax
mov dword [ebp - 0xcc], eax
jmp 0x1002d99b
mov dword [ebp - 0x108], 0xee
mov dword [ebp - 0x18], 0x77862fd4
mov dword [ebp - 0x20], 0x3a60813c
mov dword [ebp - 0x170], 2
mov dword [ebp - 0x16c], 2
mov dword [ebp - 0x168], 2
mov dword [ebp - 0x164], 2
lea ecx, [ebp - 0x65]
call fcn.1000a853
push eax
lea eax, [ebp - 0x160]
push eax
lea eax, [ebp - 0x170]
push eax
lea ecx, [ebp - 0x228]
call fcn.10018892
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x1e0]
call fcn.10018858
mov dword [ebp - 4], 1
mov dword [ebp - 0xe8], 0
mov dword [ebp - 0x44], 1
mov dword [ebp - 0x54], 0
jmp 0x1002db18
mov eax, dword [ebp - 0x54]
inc eax
mov dword [ebp - 0x54], eax
cmp dword [ebp - 0x54], 3
jge 0x1002db2e
mov eax, dword [ebp - 0x54]
mov dword [ebp + eax*4 - 0x218], 0xfffffffb
jmp 0x1002db11
mov dword [ebp - 0x18], 0
jmp 0x1002db3e
mov eax, dword [ebp - 0x18]
dec eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 0xffffffec
je 0x1002dba9
mov dword [ebp - 0x148], 0
mov dword [ebp - 0x144], 0xfffffff9
mov dword [ebp - 0x118], 0xfffffffb
lea eax, [ebp - 0x18]
push eax
push 0x4e53
push 0x4d6a
push 1
lea eax, [ebp - 0x20]
push eax
lea eax, [ebp - 0x148]
push eax
lea eax, [ebp - 0x118]
push eax
lea eax, [ebp - 0x144]
push eax
call fcn.1002cf2c
add esp, 0x20
mov byte [ebp - 0x23], 0
movzx eax, byte [ebp - 0x23]
test eax, eax
je 0x1002dba7
push 0
call dword [sym.imp.KERNEL32.dll_RtlCaptureContext]
jmp 0x1002db37
mov dword [ebp - 0x18], 0
jmp 0x1002dbb9
mov eax, dword [ebp - 0x18]
inc eax
mov dword [ebp - 0x18], eax
cmp dword [ebp - 0x18], 3
jg 0x1002de3a
push 3
lea ecx, [ebp - 0x17c]
call fcn.10018816
mov byte [ebp - 4], 2
mov dword [ebp - 0x34], 5
mov dword [ebp - 0xac], 0xffffffff
mov dword [ebp - 0x140], 0xffffffff
mov dword [ebp - 0x4c], 0
jmp 0x1002dbff
mov eax, dword [ebp - 0x4c]
inc eax
mov dword [ebp - 0x4c], eax
cmp dword [ebp - 0x4c], 3
jge 0x1002dc1b
push dword [ebp - 0x4c]
lea ecx, [ebp - 0x17c]
call fcn.10018883
mov dword [eax], 0xfffffffd
jmp 0x1002dbf8
mov dword [ebp - 0x20], 0
jmp 0x1002dc2b
mov eax, dword [ebp - 0x20]
inc eax
mov dword [ebp - 0x20], eax
cmp dword [ebp - 0x20], 3
jg 0x1002dcc9
push 2
lea ecx, [ebp - 0x188]
call fcn.10018816
mov byte [ebp - 4], 3
mov dword [ebp - 0x120], 0
push 0x3fb7
lea eax, [ebp - 0x1ac]
push eax
push 1
lea eax, [ebp - 0x188]
push eax
call fcn.1002d08c
add esp, 0x10
lea eax, [ebp - 0x1e0]
push eax
lea eax, [ebp - 0x188]
push eax
push 0x4102
push 0x71b0
lea eax, [ebp - 0x17c]
push eax
lea eax, [ebp - 0x44]
push eax
lea eax, [ebp - 0xe8]
push eax
push 1
lea eax, [ebp - 0x120]
push eax
lea eax, [ebp - 0x20]
push eax
push 0x4ba4
lea eax, [ebp - 0x34]
push eax
call fcn.1002d102
add esp, 0x30
mov byte [ebp - 4], 2
lea ecx, [ebp - 0x188]
call fcn.1001887e
jmp 0x1002dc24
mov dword [ebp - 0x34], 0
jmp 0x1002dcd9
mov eax, dword [ebp - 0x34]
inc eax
mov dword [ebp - 0x34], eax
cmp dword [ebp - 0x34], 3
jg 0x1002de26
mov dword [ebp - 0x128], 0xfffffffa
mov dword [ebp - 0x1cc], 0xfffffffd
mov byte [ebp - 0x25], 0
lea eax, [ebp - 0x25]
push eax
push 0x2aed
push 1
call fcn.1002d37d
add esp, 0xc
mov dword [ebp - 0x44], 0
jmp 0x1002dd1e
mov eax, dword [ebp - 0x44]
inc eax
mov dword [ebp - 0x44], eax
cmp dword [ebp - 0x44], 3
jg 0x1002de21
mov dword [ebp - 0x40], 0x8dfe
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x1b4], eax
mov eax, dword [ebp - 0xac]
dec eax
mov dword [ebp - 0xac], eax
mov eax, dword [ebp - 0x40]
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x20]
add eax, dword [ebp - 0x40]
cmp eax, 0xfffffff8
jle 0x1002dd62
mov dword [ebp - 0x104], 1
jmp 0x1002dd69
and dword [ebp - 0x104], 0
mov eax, dword [ebp - 0xe8]
mov dword [ebp - 0x1e4], eax
cmp dword [ebp - 0x40], 0x7921
jge 0x1002dd8a
mov dword [ebp - 0xb4], 1
jmp 0x1002dd91
and dword [ebp - 0xb4], 0
mov eax, dword [ebp - 0xb4]
sub eax, 0x1000baf3
je 0x1002ddae
push 4
pop eax
test eax, eax
je 0x1002ddae
mov dword [ebp - 0x7c], 1
jmp 0x1002ddb2
and dword [ebp - 0x7c], 0
cmp dword [ebp - 0x7c], 0xfffffffb
jne 0x1002ddc1
mov dword [ebp - 0x80], 1
jmp 0x1002ddc5
and dword [ebp - 0x80], 0
mov eax, dword [ebp - 0x128]
cmp eax, dword [ebp - 0x80]
jne 0x1002dddc
mov dword [ebp - 0x88], 1
jmp 0x1002dde3
and dword [ebp - 0x88], 0
mov eax, dword [ebp - 0x34]
cmp dword [ebp - 0x88], eax
jg 0x1002ddf7
mov dword [ebp - 0x64], 1
jmp 0x1002ddfb
and dword [ebp - 0x64], 0
push 4
pop eax
shl eax, 0
mov ecx, dword [ebp - 0x64]
mov dword [ebp + eax - 0x218], ecx
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x140], eax
cmp dword [ebp - 0x40], 0
je 0x1002de1c
jmp 0x1002de21
jmp 0x1002dd17
jmp 0x1002dcd2
mov byte [ebp - 4], 1
lea ecx, [ebp - 0x17c]
call fcn.1001887e
jmp 0x1002dbb2
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x1e0]
call fcn.1001887e
mov eax, dword [ebp - 0x1f8]
and eax, dword [ebp - 0x108]
jne 0x1002de63
mov dword [ebp - 0x90], 1
jmp 0x1002de6a
and dword [ebp - 0x90], 0
mov al, byte [ebp - 0x90]
mov byte [ebp - 0x11], al
mov eax, dword [ebp - 0x1f8]
and eax, 0x101
je 0x1002de84
mov byte [ebp - 0x11], 1
and dword [ebp - 0x15c], 0
and dword [ebp - 0x158], 0
and dword [ebp - 0x154], 0
and dword [ebp - 0x150], 0
lea ecx, [ebp - 0x5d]
call fcn.1000a853
push eax
lea eax, [ebp - 0x14c]
push eax
lea eax, [ebp - 0x15c]
push eax
lea ecx, [ebp - 0x220]
call fcn.10018892
push dword [eax + 4]
push dword [eax]
lea ecx, [ebp - 0x100]
call fcn.10018858
mov dword [ebp - 4], 4
mov dword [ebp - 0x58], 1
push 2
lea ecx, [ebp - 0x13c]
call fcn.10018816
mov byte [ebp - 4], 5
mov dword [ebp - 0x30], 1
push 0x1619
lea eax, [ebp - 0x1bc]
push eax
push 1
push 0x4861
lea eax, [ebp - 0x13c]
push eax
call fcn.1002d3d9
add esp, 0x14
push 0
lea ecx, [ebp - 0x100]
call fcn.10018883
push 0
lea ecx, [ebp - 0x100]
call fcn.10018883
cmp dword [eax], 0
je 0x1002df4a
xor eax, eax
inc eax
je 0x1002df4a
mov dword [ebp - 0x98], 1
jmp 0x1002df51
and dword [ebp - 0x98], 0
push 3
lea ecx, [ebp - 0x100]
call fcn.10018883
mov esi, dword [ebp - 0x98]
add esi, dword [eax]
push 0
lea ecx, [ebp - 0x100]
call fcn.10018883
sub esi, dword [eax]
push 0
lea ecx, [ebp - 0x100]
call fcn.10018883
cmp esi, dword [eax]
jne 0x1002df92
mov dword [ebp - 0xa0], 1
jmp 0x1002df99
and dword [ebp - 0xa0], 0
mov eax, dword [ebp - 0xa0]
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0xa8], eax
push 1
lea ecx, [ebp - 0x13c]
call fcn.10018883
mov ecx, dword [ebp - 0xa8]
mov dword [eax], ecx
mov eax, dword [ebp - 0xa8]
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0
je 0x1002e17c
mov dword [ebp - 0x6c], 0xffffffff
mov dword [ebp - 0x74], 0
mov dword [ebp - 0xc0], 5
mov dword [ebp - 0x198], 0x62406c49
mov dword [ebp - 0x194], 0x62406c49
mov dword [ebp - 0x190], 0x62406c49
mov dword [ebp - 0x18c], 0x62406c49
mov eax, dword [ebp - 0x6c]
mov dword [ebp - 0x1d4], eax
mov eax, dword [ebp - 0x6c]
neg eax
je 0x1002e035
cmp dword [ebp - 0x58], 0
je 0x1002e035
mov dword [ebp - 0xb0], 1
jmp 0x1002e03c
and dword [ebp - 0xb0], 0
mov eax, dword [ebp - 0x74]
cmp dword [ebp - 0xb0], eax
jg 0x1002e050
mov dword [ebp - 0x78], 1
jmp 0x1002e054
and dword [ebp - 0x78], 0
mov eax, dword [ebp - 0x78]
sub eax, 0x34ad
mov dword [ebp - 0xc0], eax
mov esi, dword [ebp - 0xc0]
push 0
lea ecx, [ebp - 0x13c]
call fcn.10018883
cmp esi, dword [eax]
jl 0x1002e085
mov dword [ebp - 0xc8], 1
jmp 0x1002e08c
and dword [ebp - 0xc8], 0
cmp dword [ebp - 0xc8], 0xa90e
jge 0x1002e0aa
mov eax, 0x74ac
test eax, eax
jne 0x1002e0aa
and dword [ebp - 0xd0], 0
jmp 0x1002e0b4
mov dword [ebp - 0xd0], 1
mov eax, dword [ebp - 0x74]
add eax, dword [ebp - 0xd0]
cmp eax, dword [ebp - 0x6c]
jne 0x1002e0ce
mov dword [ebp - 0x10c], 1
jmp 0x1002e0d5
and dword [ebp - 0x10c], 0
mov eax, dword [ebp - 0x58]
mov dword [ebp - 0x1c4], eax
push 0
lea ecx, [ebp - 0x100]
call fcn.10018883
mov ecx, 0x7cf8fb6f
sub ecx, dword [eax]
jne 0x1002e103
cmp dword [ebp - 0x30], 0
jne 0x1002e103
and dword [ebp - 0x114], 0
jmp 0x1002e10d
mov dword [ebp - 0x114], 1
mov eax, dword [ebp - 0x30]
mov dword [ebp - 0x1a4], eax
cmp dword [ebp - 0x74], 0x4818a88a
jg 0x1002e12b
mov dword [ebp - 0xe4], 1
jmp 0x1002e132
and dword [ebp - 0xe4], 0
mov eax, dword [ebp - 0xe4]
mov dword [ebp - 0x30], eax
cmp dword [ebp - 0x30], 0
je 0x1002e151
xor eax, eax
je 0x1002e151
mov dword [ebp - 0xec], 1
jmp 0x1002e158
and dword [ebp - 0xec], 0
push 0
lea ecx, [ebp - 0x13c]
call fcn.10018883
mov ecx, dword [ebp - 0xec]
imul ecx, dword [eax]
push 4
pop eax
shl eax, 1
mov dword [ebp + eax - 0x198], ecx
jmp 0x1002e1a7
mov byte [ebp - 0x22], 0
push 0x3c6b
push 1
push 0x3773
push 0x1e6a
push 0x5128
push 0x5e29
lea eax, [ebp - 0x22]
push eax
call fcn.1002d4c2
add esp, 0x1c
mov byte [ebp - 0x21], 0
movzx eax, byte [ebp - 0x21]
test eax, eax
je 0x1002e1bb
push 0
call fcn.10032276
pop ecx
mov byte [ebp - 4], 4
lea ecx, [ebp - 0x13c]
call fcn.1001887e
or dword [ebp - 4], 0xffffffff
lea ecx, [ebp - 0x100]
call fcn.1001887e
mov al, byte [ebp - 0x11]
jmp 0x1002e1e0
mov al, 1
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop edi
pop esi
mov esp, ebp
pop ebp
ret