Function at 0x787b8c
Capabilities:
Contain obfuscated stackstrings

Disassembly:
push ebp
mov ebp, esp
add esp, 0xfffffe10
push ebx
push esi
push edi
xor edx, edx
mov dword [ebp - 0x1f0], edx
mov dword [ebp - 0x1ec], edx
mov dword [ebp - 0x1e8], edx
mov dword [ebp - 0x1e4], edx
mov dword [ebp - 0x1e0], edx
mov dword [ebp - 0x1dc], edx
mov dword [ebp - 0x1d8], edx
mov dword [ebp - 0x1d0], edx
mov dword [ebp - 0x1d4], edx
mov dword [ebp - 4], edx
mov dword [ebp - 8], eax
xor eax, eax
push ebp
push 0x788760
push dword fs:[eax]
mov dword fs:[eax], esp
xor ecx, ecx
mov dl, 1
mov eax, dword [0x6556e0]
call fcn.005de260
mov dword [ebp - 0xc], eax
mov eax, dword [ebp - 0xc]
mov byte [eax + 0x148], 1
mov eax, dword [ebp - 0xc]
call fcn.00659308
add eax, 0xa8
mov edx, dword [ebp - 8]
mov edx, dword [edx + 0x40c]
call fcn.0040a10c
lea eax, [ebp - 4]
push eax
mov word [ebp - 0x1cc], 0x68
mov byte [ebp - 0x1c8], 9
mov word [ebp - 0x1c4], 0x74
mov byte [ebp - 0x1c0], 9
mov word [ebp - 0x1bc], 0x74
mov byte [ebp - 0x1b8], 9
mov word [ebp - 0x1b4], 0x70
mov byte [ebp - 0x1b0], 9
mov word [ebp - 0x1ac], 0x3a
mov byte [ebp - 0x1a8], 9
mov word [ebp - 0x1a4], 0x2f
mov byte [ebp - 0x1a0], 9
mov word [ebp - 0x19c], 0x2f
mov byte [ebp - 0x198], 9
mov word [ebp - 0x194], 0x75
mov byte [ebp - 0x190], 9
mov word [ebp - 0x18c], 0x70
mov byte [ebp - 0x188], 9
mov word [ebp - 0x184], 0x64
mov byte [ebp - 0x180], 9
mov word [ebp - 0x17c], 0x61
mov byte [ebp - 0x178], 9
mov word [ebp - 0x174], 0x74
mov byte [ebp - 0x170], 9
mov word [ebp - 0x16c], 0x65
mov byte [ebp - 0x168], 9
mov word [ebp - 0x164], 0x73
mov byte [ebp - 0x160], 9
mov word [ebp - 0x15c], 0x2e
mov byte [ebp - 0x158], 9
mov word [ebp - 0x154], 0x6f
mov byte [ebp - 0x150], 9
mov word [ebp - 0x14c], 0x6e
mov byte [ebp - 0x148], 9
mov word [ebp - 0x144], 0x65
mov byte [ebp - 0x140], 9
mov word [ebp - 0x13c], 0x73
mov byte [ebp - 0x138], 9
mov word [ebp - 0x134], 0x61
mov byte [ebp - 0x130], 9
mov word [ebp - 0x12c], 0x66
mov byte [ebp - 0x128], 9
mov word [ebp - 0x124], 0x65
mov byte [ebp - 0x120], 9
mov word [ebp - 0x11c], 0x73
mov byte [ebp - 0x118], 9
mov word [ebp - 0x114], 0x6f
mov byte [ebp - 0x110], 9
mov word [ebp - 0x10c], 0x66
mov byte [ebp - 0x108], 9
mov word [ebp - 0x104], 0x74
mov byte [ebp - 0x100], 9
mov word [ebp - 0xfc], 0x77
mov byte [ebp - 0xf8], 9
mov word [ebp - 0xf4], 0x61
mov byte [ebp - 0xf0], 9
mov word [ebp - 0xec], 0x72
mov byte [ebp - 0xe8], 9
mov word [ebp - 0xe4], 0x65
mov byte [ebp - 0xe0], 9
mov word [ebp - 0xdc], 0x2e
mov byte [ebp - 0xd8], 9
mov word [ebp - 0xd4], 0x63
mov byte [ebp - 0xd0], 9
mov word [ebp - 0xcc], 0x6f
mov byte [ebp - 0xc8], 9
mov word [ebp - 0xc4], 0x6d
mov byte [ebp - 0xc0], 9
mov word [ebp - 0xbc], 0x2f
mov byte [ebp - 0xb8], 9
mov word [ebp - 0xb4], 0x64
mov byte [ebp - 0xb0], 9
mov word [ebp - 0xac], 0x61
mov byte [ebp - 0xa8], 9
mov word [ebp - 0xa4], 0x74
mov byte [ebp - 0xa0], 9
mov word [ebp - 0x9c], 0x61
mov byte [ebp - 0x98], 9
mov word [ebp - 0x94], 0x2f
mov byte [ebp - 0x90], 9
mov word [ebp - 0x8c], 0x50
mov byte [ebp - 0x88], 9
mov word [ebp - 0x84], 0x43
mov byte [ebp - 0x80], 9
mov word [ebp - 0x7c], 0x4f
mov byte [ebp - 0x78], 9
mov word [ebp - 0x74], 0x70
mov byte [ebp - 0x70], 9
mov word [ebp - 0x6c], 0x74
mov byte [ebp - 0x68], 9
mov word [ebp - 0x64], 0x69
mov byte [ebp - 0x60], 9
mov word [ebp - 0x5c], 0x43
mov byte [ebp - 0x58], 9
mov word [ebp - 0x54], 0x6c
mov byte [ebp - 0x50], 9
mov word [ebp - 0x4c], 0x65
mov byte [ebp - 0x48], 9
mov word [ebp - 0x44], 0x61
mov byte [ebp - 0x40], 9
mov word [ebp - 0x3c], 0x6e
mov byte [ebp - 0x38], 9
mov word [ebp - 0x34], 0x2e
mov byte [ebp - 0x30], 9
mov word [ebp - 0x2c], 0x74
mov byte [ebp - 0x28], 9
mov word [ebp - 0x24], 0x78
mov byte [ebp - 0x20], 9
mov word [ebp - 0x1c], 0x74
mov byte [ebp - 0x18], 9
lea edx, [ebp - 0x1cc]
mov ecx, 0x36
mov eax, 0x78877c
call fcn.004246d8
mov byte [ebp - 0x11], 0
xor eax, eax
push ebp
push 0x787f91
push dword fs:[eax]
mov dword fs:[eax], esp
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 0xc]
call fcn.00656164
mov eax, dword [ebp - 0xc]
call fcn.006592fc
call fcn.006597fc
cmp eax, 0x194
jne 0x787f87
mov byte [ebp - 0x11], 1
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x787f9b
cmp byte [ebp - 0x11], 0
jne 0x788012
mov dl, 1
mov eax, dword [0x47d800]
call fcn.00407f60
mov dword [ebp - 0x10], eax
xor eax, eax
push ebp
push 0x788000
push dword fs:[eax]
mov dword fs:[eax], esp
mov ecx, dword [ebp - 0x10]
mov edx, dword [ebp - 4]
mov eax, dword [ebp - 0xc]
call fcn.0065610c
push 0
push 0
mov eax, dword [ebp - 0x10]
call fcn.0049c8c4
call fcn.0042cf18
mov ecx, eax
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3e8]
mov eax, dword [eax + 0x2d0]
mov edx, dword [ebp - 0x10]
mov ebx, dword [eax]
call dword [ebx + 0x78]
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x78800a
mov eax, dword [ebp - 0x10]
call fcn.00407f90
xor eax, eax
push ebp
push 0x78803e
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 0xc]
mov edx, dword [eax]
call dword [edx + 0x78]
test al, al
je 0x788034
mov eax, dword [ebp - 0xc]
call fcn.0061fc80
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x788048
mov eax, dword [ebp - 0xc]
call fcn.00407f90
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3d0]
xor edx, edx
call fcn.005062a8
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3e8]
mov eax, dword [eax + 0x2d0]
mov edx, dword [eax]
call dword [edx + 0x14]
test eax, eax
jne 0x7882a9
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3dc]
mov edx, 0x32
call fcn.00505818
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3dc]
mov edx, 0x14
call fcn.005057e0
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3dc]
mov edx, 0x154
call fcn.00505850
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3dc]
mov edx, 0x28
call fcn.00505888
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3dc]
xor edx, edx
call fcn.00524854
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3dc]
mov eax, dword [eax + 0x74]
mov edx, 0x464646
call fcn.004db68c
push 0
lea eax, [ebp - 4]
push eax
mov eax, dword [0x8d4254]
mov eax, dword [eax]
mov ecx, 0x788868
mov edx, 0x788888
mov ebx, dword [eax]
call dword [ebx + 4]
movzx eax, byte [0x788898]
push eax
lea eax, [ebp - 0x1d0]
push eax
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x404]
lea eax, [ebp - 0x1d4]
mov edx, 0x7888a8
call fcn.0040acf0
mov ecx, dword [ebp - 0x1d4]
mov edx, 0x7888d0
mov eax, dword [ebp - 4]
call fcn.0042a7f8
mov edx, dword [ebp - 0x1d0]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3dc]
call fcn.005063f8
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3dc]
mov dl, 1
call fcn.005062a8
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3e0]
mov edx, 0x5a
call fcn.00505818
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3e0]
mov edx, 0x14
call fcn.005057e0
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3e0]
mov edx, 0x154
call fcn.00505850
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3e0]
mov edx, 0x28
call fcn.00505888
push 0
lea eax, [ebp - 0x1d8]
push eax
mov eax, dword [0x8d4254]
mov eax, dword [eax]
mov ecx, 0x7888f8
mov edx, 0x788888
mov ebx, dword [eax]
call dword [ebx + 4]
mov edx, dword [ebp - 0x1d8]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3e0]
call fcn.005063f8
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3e0]
mov dl, 1
call fcn.005062a8
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3f0]
call fcn.00565bb8
push eax
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3ec]
call fcn.00565bb8
mov cl, 2
pop edx
call fcn.00669fbc
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3ec]
mov dl, 1
call fcn.005062a8
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3f0]
xor edx, edx
call fcn.005062a8
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3f4]
mov dl, 1
call fcn.005062a8
push 0
lea eax, [ebp - 0x1dc]
push eax
mov eax, dword [0x8d4254]
mov eax, dword [eax]
mov ecx, 0x788918
mov edx, 0x788888
mov ebx, dword [eax]
call dword [ebx + 4]
mov edx, dword [ebp - 0x1dc]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3f4]
call fcn.005063f8
mov eax, dword [0x8d3ac8]
cmp dword [eax], 2
jne 0x78873a
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3f4]
mov eax, dword [eax + 0x74]
mov edx, 0xb
call fcn.004dba38
jmp 0x78873a
mov edx, 0x1f4
mov eax, dword [0x8dbeac]
call fcn.00505850
mov eax, dword [0x8dbeac]
call fcn.005bef84
mov edx, eax
sub edx, 0x46
mov eax, dword [0x8dbeac]
call fcn.005c4de4
mov edx, 0x1f4
mov eax, dword [0x8dbeac]
call fcn.00505888
mov eax, dword [0x8dbeac]
call fcn.005befa4
mov edx, eax
sub edx, 0x8c
mov eax, dword [0x8dbeac]
call fcn.005c4e20
mov dl, 1
mov eax, dword [0x4d940c]
call fcn.004e2464
mov ebx, eax
mov eax, dword [ebp - 8]
mov edx, dword [eax + 0x58]
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 0x44]
mov eax, dword [ebp - 8]
mov edx, dword [eax + 0x5c]
mov eax, ebx
mov ecx, dword [eax]
call dword [ecx + 0x38]
mov eax, ebx
call fcn.004e2db8
call fcn.00669df8
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3c8]
mov eax, dword [eax + 0x1c8]
mov edx, ebx
mov ecx, dword [eax]
call dword [ecx + 8]
mov eax, ebx
call fcn.00407f90
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3d4]
mov edx, 0x1dc
call fcn.005057e0
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3cc]
mov dl, 1
call fcn.005062a8
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3dc]
mov edx, 0x32
call fcn.00505818
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3dc]
mov edx, 0x60
call fcn.005057e0
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3dc]
mov edx, 0x17c
call fcn.00505850
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3dc]
mov edx, 0x14
call fcn.00505888
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3dc]
xor edx, edx
call fcn.00524854
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3dc]
mov eax, dword [eax + 0x74]
mov edx, 0x9966
call fcn.004db68c
push 0
lea eax, [ebp - 4]
push eax
mov eax, dword [0x8d4254]
mov eax, dword [eax]
mov ecx, 0x788938
mov edx, 0x788888
mov ebx, dword [eax]
call dword [ebx + 4]
movzx eax, byte [0x788898]
push eax
lea eax, [ebp - 0x1e0]
push eax
mov eax, dword [ebp - 8]
mov ecx, dword [eax + 0x404]
mov edx, 0x788958
mov eax, dword [ebp - 4]
call fcn.0042a7f8
mov edx, dword [ebp - 0x1e0]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3dc]
call fcn.005063f8
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3dc]
mov dl, 1
call fcn.005062a8
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3e0]
mov edx, 0x14
call fcn.00505888
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3e0]
mov edx, 0x17c
call fcn.00505850
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3dc]
mov edx, dword [eax + 0x54]
add edx, dword [eax + 0x5c]
add edx, 4
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3e0]
call fcn.00505818
push 0
lea eax, [ebp - 0x1e4]
push eax
mov eax, dword [0x8d4254]
mov eax, dword [eax]
mov ecx, 0x7888f8
mov edx, 0x788888
mov ebx, dword [eax]
call dword [ebx + 4]
mov edx, dword [ebp - 0x1e4]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3e0]
call fcn.005063f8
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3e0]
mov dl, 1
call fcn.005062a8
push 0
lea eax, [ebp - 0x1e8]
push eax
mov eax, dword [0x8d4254]
mov eax, dword [eax]
mov ecx, 0x78896c
mov edx, 0x788888
mov ebx, dword [eax]
call dword [ebx + 4]
mov edx, dword [ebp - 0x1e8]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3e4]
call fcn.005063f8
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3e4]
mov dl, 1
call fcn.005062a8
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3e4]
mov edx, dword [eax + 0x54]
add edx, dword [eax + 0x5c]
add edx, 8
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3e8]
call fcn.00505818
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3e8]
mov edx, 0x1cc
call fcn.00505850
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3e8]
mov edx, 0x108
call fcn.00505888
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3e8]
mov eax, dword [eax + 0x2d0]
mov edx, dword [eax]
call dword [edx + 0x14]
cmp eax, 0xc
jle 0x788582
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3e8]
mov dl, 2
call fcn.005267e8
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3e8]
mov dl, 1
call fcn.005062a8
mov eax, dword [0x8dbeac]
mov edx, dword [eax + 0x5c]
sub edx, 0x40
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3ec]
call fcn.00505818
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3ec]
mov edx, dword [eax + 0x54]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3f0]
call fcn.00505818
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3ec]
mov edx, dword [eax + 0x54]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3f4]
call fcn.00505818
mov eax, dword [0x8dbeac]
mov edx, dword [eax + 0x58]
sub edx, 0xbe
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3ec]
call fcn.005057e0
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3ec]
mov edx, dword [eax + 0x50]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3f0]
call fcn.005057e0
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3ec]
mov edx, dword [eax + 0x50]
add edx, 0xa
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3f4]
call fcn.005057e0
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3f0]
call fcn.00565bb8
push eax
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3ec]
call fcn.00565bb8
mov cl, 2
pop edx
call fcn.00669fbc
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3ec]
mov dl, 1
call fcn.005062a8
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3f0]
xor edx, edx
call fcn.005062a8
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3f4]
mov dl, 1
call fcn.005062a8
push 0
lea eax, [ebp - 0x1ec]
push eax
mov eax, dword [0x8d4254]
mov eax, dword [eax]
mov ecx, 0x788918
mov edx, 0x788888
mov ebx, dword [eax]
call dword [ebx + 4]
mov edx, dword [ebp - 0x1ec]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3f4]
call fcn.005063f8
mov eax, dword [0x8d3ac8]
cmp dword [eax], 2
jne 0x7886da
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3f4]
mov eax, dword [eax + 0x74]
mov edx, 0xb
call fcn.004dba38
push 0
lea eax, [ebp - 0x1f0]
push eax
mov eax, dword [0x8d4254]
mov eax, dword [eax]
mov ecx, 0x78898c
mov edx, 0x788888
mov ebx, dword [eax]
call dword [ebx + 4]
mov edx, dword [ebp - 0x1f0]
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3f8]
call fcn.005063f8
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3f4]
mov edx, dword [eax + 0x54]
add edx, 0xc
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3f8]
call fcn.00505818
mov eax, dword [ebp - 8]
mov eax, dword [eax + 0x3f8]
mov dl, 1
call fcn.005062a8
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x788767
lea eax, [ebp - 0x1f0]
mov edx, 9
call fcn.00409d8c
lea eax, [ebp - 4]
call fcn.00409d2c
ret