Function at 0x13310
Capabilities:
Print debug messages

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
sub esp, 0x460
mov eax, dword [0x30fa8]
xor eax, ebp
mov dword [ebp - 8], eax
push esi
mov dword [ebp - 0x454], ecx
mov dword [ebp - 4], 0
mov dword [ebp - 0x20c], 0
mov dword [ebp - 0x420], 0
mov dword [ebp - 0x210], 0xff
mov dword [ebp - 0x41c], 0xff
mov dword [ebp - 0x418], 0
mov dword [ebp - 0x414], 0
mov byte [ebp - 0x208], 0
push 0x1ff
push 0
lea eax, [ebp - 0x207]
push eax
call sub.ntoskrnl.exe_memset
add esp, 0xc
mov byte [ebp - 0x410], 0
push 0x1ff
push 0
lea ecx, [ebp - 0x40f]
push ecx
call sub.ntoskrnl.exe_memset
add esp, 0xc
lea edx, [ebp - 0x208]
push edx
push 1
push 0
push 0
mov ecx, dword [ebp - 0x454]
call fcn.00012e90
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
je 0x133e2
push 0x2c0f0
push 0x2cc
mov eax, dword [ebp - 4]
push eax
call fcn.00019350
jmp 0x13ca9
movzx ecx, word [ebp - 0xa]
cmp ecx, 0xaa55
je 0x1340a
push 0x2c0f0
push 0x2d0
push 0xc000009c
call fcn.00019350
mov dword [ebp - 4], eax
jmp 0x13ca9
mov dword [ebp - 0x20c], 0
jmp 0x13425
mov edx, dword [ebp - 0x20c]
add edx, 1
mov dword [ebp - 0x20c], edx
cmp dword [ebp - 0x20c], 4
jge 0x13c99
mov eax, dword [ebp - 0x20c]
shl eax, 4
lea ecx, [ebp + eax - 0x4a]
mov dword [ebp - 0x424], ecx
mov edx, dword [ebp - 0x424]
movzx eax, byte [edx + 4]
test eax, eax
jne 0x13455
jmp 0x13416
mov ecx, dword [ebp - 0x424]
mov edx, dword [ecx + 8]
xor eax, eax
mov ecx, dword [ebp - 0x454]
mov dword [ebp - 0x45c], edx
mov dword [ebp - 0x458], eax
mov dword [ebp - 0x460], ecx
mov edx, dword [ebp - 0x460]
mov eax, dword [ebp - 0x458]
cmp eax, dword [edx + 0x18]
jb 0x134a1
ja 0x1349c
mov ecx, dword [ebp - 0x460]
mov edx, dword [ebp - 0x45c]
cmp edx, dword [ecx + 0x14]
jb 0x134a1
jmp 0x13416
mov eax, dword [ebp - 0x420]
mov ecx, dword [ebp - 0x454]
cmp dword [ecx + eax*4 + 0x34], 0
jne 0x134e7
mov edx, dword [ebp - 0x424]
movzx eax, byte [edx + 4]
push eax
mov ecx, dword [ebp - 0x424]
mov edx, dword [ecx + 8]
xor eax, eax
push eax
push edx
mov ecx, dword [ebp - 0x454]
call fcn.00013db0
mov ecx, dword [ebp - 0x420]
mov edx, dword [ebp - 0x454]
mov dword [edx + ecx*4 + 0x34], eax
mov eax, dword [ebp - 0x420]
mov ecx, dword [ebp - 0x454]
cmp dword [ecx + eax*4 + 0x34], 0
jne 0x13516
push 0x2c0f0
push 0x2e1
push 0xc000009a
call fcn.00019350
mov dword [ebp - 4], eax
jmp 0x13c99
mov edx, dword [ebp - 0x420]
mov eax, dword [ebp - 0x454]
mov ecx, dword [eax + edx*4 + 0x34]
add ecx, 0x30
mov edx, dword [ebp - 0x424]
mov eax, dword [edx]
mov dword [ecx], eax
mov eax, dword [edx + 4]
mov dword [ecx + 4], eax
mov eax, dword [edx + 8]
mov dword [ecx + 8], eax
mov edx, dword [edx + 0xc]
mov dword [ecx + 0xc], edx
mov eax, dword [ebp - 0x420]
mov ecx, dword [ebp - 0x454]
mov edx, dword [ecx + eax*4 + 0x34]
mov byte [edx + 8], 1
mov eax, dword [ebp - 0x424]
mov ecx, dword [eax + 8]
xor edx, edx
mov eax, dword [ebp - 0x420]
mov esi, dword [ebp - 0x454]
mov eax, dword [esi + eax*4 + 0x34]
mov dword [eax + 0x10], ecx
mov dword [eax + 0x14], edx
mov ecx, dword [ebp - 0x420]
mov edx, dword [ebp - 0x454]
mov eax, dword [edx + ecx*4 + 0x34]
mov ecx, dword [ebp - 0x424]
mov dl, byte [ecx + 4]
mov byte [eax + 6], dl
mov eax, dword [ebp - 0x424]
mov ecx, dword [eax + 0xc]
xor edx, edx
mov eax, dword [ebp - 0x420]
mov esi, dword [ebp - 0x454]
mov eax, dword [esi + eax*4 + 0x34]
mov dword [eax + 0x18], ecx
mov dword [eax + 0x1c], edx
cmp dword [ebp - 0x41c], 0xff
je 0x13615
mov ecx, dword [ebp - 0x41c]
mov edx, dword [ebp - 0x454]
cmp dword [edx + ecx*4 + 0x34], 0
jne 0x135f2
push 0x2c0f0
push 0x2ec
push 0xc00000e5
call fcn.00019350
mov dword [ebp - 4], eax
jmp 0x13c99
mov eax, dword [ebp - 0x41c]
mov ecx, dword [ebp - 0x454]
mov edx, dword [ecx + eax*4 + 0x34]
mov eax, dword [ebp - 0x420]
mov ecx, dword [ebp - 0x454]
mov eax, dword [ecx + eax*4 + 0x34]
mov dword [edx + 0x44], eax
mov ecx, dword [ebp - 0x420]
mov dword [ebp - 0x41c], ecx
mov edx, dword [ebp - 0x420]
add edx, 1
mov dword [ebp - 0x420], edx
mov eax, dword [ebp - 0x424]
movzx ecx, byte [eax + 4]
cmp ecx, 0xf
je 0x13652
mov edx, dword [ebp - 0x424]
movzx eax, byte [edx + 4]
cmp eax, 5
jne 0x13c94
mov ecx, dword [ebp - 0x424]
mov edx, dword [ecx + 8]
xor eax, eax
mov dword [ebp - 0x440], edx
mov dword [ebp - 0x43c], eax
mov ecx, dword [ebp - 0x424]
mov edx, dword [ecx + 0xc]
mov dword [ebp - 0x428], edx
mov eax, dword [ebp - 0x424]
mov ecx, dword [eax + 8]
mov edx, dword [ebp - 0x424]
add ecx, dword [edx + 0xc]
xor eax, eax
mov dword [ebp - 0x430], ecx
mov dword [ebp - 0x42c], eax
mov dword [ebp - 0x438], 0
mov dword [ebp - 0x434], 0
mov ecx, dword [ebp - 0x420]
sub ecx, 1
mov dword [ebp - 0x210], ecx
mov edx, dword [ebp - 0x440]
mov dword [ebp - 0x418], edx
mov eax, dword [ebp - 0x43c]
mov dword [ebp - 0x414], eax
mov ecx, 1
test ecx, ecx
je 0x13c8c
mov byte [ebp - 0x44d], 0xff
mov dword [ebp - 0x444], 0
mov dword [ebp - 0x44c], 0
lea edx, [ebp - 0x410]
push edx
push 1
mov eax, dword [ebp - 0x414]
push eax
mov ecx, dword [ebp - 0x418]
push ecx
mov ecx, dword [ebp - 0x454]
call fcn.00012e90
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
je 0x1373e
push 0x2c0f0
push 0x303
mov edx, dword [ebp - 4]
push edx
call fcn.00019350
jmp 0x13c8c
movzx eax, word [ebp - 0x212]
cmp eax, 0xaa55
je 0x13751
jmp 0x13c8c
mov dword [ebp - 0x448], 0
jmp 0x1376c
mov ecx, dword [ebp - 0x448]
add ecx, 1
mov dword [ebp - 0x448], ecx
cmp dword [ebp - 0x448], 4
jge 0x13c0c
mov edx, dword [ebp - 0x448]
shl edx, 4
lea eax, [ebp + edx - 0x252]
mov dword [ebp - 0x444], eax
mov ecx, dword [ebp - 0x444]
movzx edx, byte [ecx + 4]
test edx, edx
jne 0x1379f
jmp 0x1375d
mov eax, dword [ebp - 0x444]
movzx ecx, byte [eax + 4]
cmp ecx, 0xf
je 0x137c1
mov edx, dword [ebp - 0x444]
movzx eax, byte [edx + 4]
cmp eax, 5
jne 0x1394e
mov ecx, dword [ebp - 0x444]
mov edx, dword [ecx + 8]
xor eax, eax
add edx, dword [ebp - 0x440]
mov ecx, dword [ebp - 0x43c]
adc ecx, eax
mov dword [ebp - 0x438], edx
mov dword [ebp - 0x434], ecx
mov edx, dword [ebp - 0x434]
cmp edx, dword [ebp - 0x42c]
jb 0x1386d
ja 0x13804
mov eax, dword [ebp - 0x438]
cmp eax, dword [ebp - 0x430]
jbe 0x1386d
mov ecx, dword [ebp - 0x42c]
push ecx
mov edx, dword [ebp - 0x430]
push edx
mov eax, dword [ebp - 0x428]
push eax
mov ecx, dword [ebp - 0x43c]
push ecx
mov edx, dword [ebp - 0x440]
push edx
mov eax, dword [ebp - 0x444]
mov ecx, dword [eax + 0xc]
push ecx
mov edx, dword [ebp - 0x444]
mov eax, dword [edx + 8]
push eax
mov ecx, dword [ebp - 0x444]
movzx edx, byte [ecx + 4]
push edx
mov eax, dword [ebp - 0x414]
push eax
mov ecx, dword [ebp - 0x418]
push ecx
mov edx, dword [ebp - 0x448]
push edx
push 0x2c120
call sub.ntoskrnl.exe_DbgPrint
add esp, 0x30
jmp 0x1375d
mov eax, dword [ebp - 0x420]
add eax, dword [ebp - 0x44c]
mov ecx, dword [ebp - 0x454]
cmp dword [ecx + eax*4 + 0x34], 0
jne 0x138cd
mov edx, dword [ebp - 0x444]
movzx eax, byte [edx + 4]
push eax
mov ecx, dword [ebp - 0x444]
mov edx, dword [ecx + 8]
xor eax, eax
add edx, dword [ebp - 0x440]
mov ecx, dword [ebp - 0x43c]
adc ecx, eax
push ecx
push edx
mov ecx, dword [ebp - 0x454]
call fcn.00013db0
mov edx, dword [ebp - 0x420]
add edx, dword [ebp - 0x44c]
mov ecx, dword [ebp - 0x454]
mov dword [ecx + edx*4 + 0x34], eax
mov edx, dword [ebp - 0x420]
add edx, dword [ebp - 0x44c]
mov eax, dword [ebp - 0x454]
cmp dword [eax + edx*4 + 0x34], 0
jne 0x13902
push 0x2c0f0
push 0x31b
push 0xc000009a
call fcn.00019350
mov dword [ebp - 4], eax
jmp 0x13c0c
mov ecx, dword [ebp - 0x444]
mov edx, dword [ecx + 8]
xor eax, eax
add edx, dword [ebp - 0x440]
mov ecx, dword [ebp - 0x43c]
adc ecx, eax
mov eax, dword [ebp - 0x420]
add eax, dword [ebp - 0x44c]
mov esi, dword [ebp - 0x454]
mov eax, dword [esi + eax*4 + 0x34]
mov dword [eax + 0x10], edx
mov dword [eax + 0x14], ecx
mov ecx, dword [ebp - 0x420]
add ecx, dword [ebp - 0x44c]
mov byte [ebp - 0x44d], cl
jmp 0x13ac4
mov edx, dword [ebp - 0x444]
mov eax, dword [edx + 8]
xor ecx, ecx
add eax, dword [ebp - 0x418]
mov edx, dword [ebp - 0x414]
adc edx, ecx
mov dword [ebp - 0x438], eax
mov dword [ebp - 0x434], edx
mov eax, dword [ebp - 0x434]
cmp eax, dword [ebp - 0x42c]
jb 0x139fa
ja 0x13991
mov ecx, dword [ebp - 0x438]
cmp ecx, dword [ebp - 0x430]
jbe 0x139fa
mov edx, dword [ebp - 0x42c]
push edx
mov eax, dword [ebp - 0x430]
push eax
mov ecx, dword [ebp - 0x428]
push ecx
mov edx, dword [ebp - 0x43c]
push edx
mov eax, dword [ebp - 0x440]
push eax
mov ecx, dword [ebp - 0x444]
mov edx, dword [ecx + 0xc]
push edx
mov eax, dword [ebp - 0x444]
mov ecx, dword [eax + 8]
push ecx
mov edx, dword [ebp - 0x444]
movzx eax, byte [edx + 4]
push eax
mov ecx, dword [ebp - 0x414]
push ecx
mov edx, dword [ebp - 0x418]
push edx
mov eax, dword [ebp - 0x448]
push eax
push 0x2c120
call sub.ntoskrnl.exe_DbgPrint
add esp, 0x30
jmp 0x1375d
mov ecx, dword [ebp - 0x420]
add ecx, dword [ebp - 0x44c]
mov edx, dword [ebp - 0x454]
cmp dword [edx + ecx*4 + 0x34], 0
jne 0x13a5a
mov eax, dword [ebp - 0x444]
movzx ecx, byte [eax + 4]
push ecx
mov edx, dword [ebp - 0x444]
mov eax, dword [edx + 8]
xor ecx, ecx
add eax, dword [ebp - 0x418]
mov edx, dword [ebp - 0x414]
adc edx, ecx
push edx
push eax
mov ecx, dword [ebp - 0x454]
call fcn.00013db0
mov ecx, dword [ebp - 0x420]
add ecx, dword [ebp - 0x44c]
mov edx, dword [ebp - 0x454]
mov dword [edx + ecx*4 + 0x34], eax
mov eax, dword [ebp - 0x420]
add eax, dword [ebp - 0x44c]
mov ecx, dword [ebp - 0x454]
cmp dword [ecx + eax*4 + 0x34], 0
jne 0x13a8f
push 0x2c0f0
push 0x32e
push 0xc000009a
call fcn.00019350
mov dword [ebp - 4], eax
jmp 0x13c0c
mov edx, dword [ebp - 0x444]
mov eax, dword [edx + 8]
xor ecx, ecx
add eax, dword [ebp - 0x418]
mov edx, dword [ebp - 0x414]
adc edx, ecx
mov ecx, dword [ebp - 0x420]
add ecx, dword [ebp - 0x44c]
mov esi, dword [ebp - 0x454]
mov ecx, dword [esi + ecx*4 + 0x34]
mov dword [ecx + 0x10], eax
mov dword [ecx + 0x14], edx
mov edx, dword [ebp - 0x420]
add edx, dword [ebp - 0x44c]
mov eax, dword [ebp - 0x454]
mov ecx, dword [eax + edx*4 + 0x34]
mov edx, dword [ebp - 0x444]
mov al, byte [edx + 4]
mov byte [ecx + 6], al
mov ecx, dword [ebp - 0x444]
mov edx, dword [ecx + 0xc]
xor eax, eax
mov ecx, dword [ebp - 0x420]
add ecx, dword [ebp - 0x44c]
mov esi, dword [ebp - 0x454]
mov ecx, dword [esi + ecx*4 + 0x34]
mov dword [ecx + 0x18], edx
mov dword [ecx + 0x1c], eax
mov edx, dword [ebp - 0x420]
add edx, dword [ebp - 0x44c]
mov eax, dword [ebp - 0x454]
mov ecx, dword [eax + edx*4 + 0x34]
add ecx, 0x30
mov edx, dword [ebp - 0x444]
mov eax, dword [edx]
mov dword [ecx], eax
mov eax, dword [edx + 4]
mov dword [ecx + 4], eax
mov eax, dword [edx + 8]
mov dword [ecx + 8], eax
mov edx, dword [edx + 0xc]
mov dword [ecx + 0xc], edx
mov eax, dword [ebp - 0x420]
add eax, dword [ebp - 0x44c]
mov ecx, dword [ebp - 0x454]
mov edx, dword [ecx + eax*4 + 0x34]
mov eax, dword [ebp - 0x210]
mov ecx, dword [ebp - 0x454]
mov eax, dword [ecx + eax*4 + 0x34]
mov dword [edx + 0x40], eax
cmp dword [ebp - 0x44c], 0
jle 0x13ba5
mov ecx, dword [ebp - 0x420]
add ecx, dword [ebp - 0x44c]
mov edx, dword [ebp - 0x420]
add edx, dword [ebp - 0x44c]
mov eax, dword [ebp - 0x454]
mov edx, dword [eax + edx*4 + 0x30]
mov eax, dword [ebp - 0x454]
mov ecx, dword [eax + ecx*4 + 0x34]
mov dword [edx + 0x44], ecx
jmp 0x13bce
mov edx, dword [ebp - 0x420]
add edx, dword [ebp - 0x44c]
mov eax, dword [ebp - 0x210]
mov ecx, dword [ebp - 0x454]
mov eax, dword [ecx + eax*4 + 0x34]
mov ecx, dword [ebp - 0x454]
mov edx, dword [ecx + edx*4 + 0x34]
mov dword [eax + 0x48], edx
mov eax, dword [ebp - 0x44c]
add eax, 1
mov dword [ebp - 0x44c], eax
mov ecx, dword [ebp - 0x420]
add ecx, dword [ebp - 0x44c]
cmp ecx, 0x5f
jle 0x13c07
push 0x2c0f0
push 0x33c
push 0xc000009c
call fcn.00019350
mov dword [ebp - 4], eax
jmp 0x13c0c
jmp 0x1375d
cmp dword [ebp - 4], 0
je 0x13c14
jmp 0x13c8c
cmp dword [ebp - 0x44c], 2
jle 0x13c36
push 0x2c0f0
push 0x342
push 0xc000009c
call fcn.00019350
mov dword [ebp - 4], eax
jmp 0x13c8c
mov edx, dword [ebp - 0x420]
add edx, dword [ebp - 0x44c]
mov dword [ebp - 0x420], edx
movzx eax, byte [ebp - 0x44d]
cmp eax, 0xff
jne 0x13c58
jmp 0x13c8c
movzx ecx, byte [ebp - 0x44d]
mov edx, dword [ebp - 0x454]
mov eax, dword [edx + ecx*4 + 0x34]
mov ecx, dword [eax + 0x10]
xor edx, edx
mov dword [ebp - 0x418], ecx
mov dword [ebp - 0x414], edx
movzx eax, byte [ebp - 0x44d]
mov dword [ebp - 0x210], eax
jmp 0x136d3
cmp dword [ebp - 4], 0
je 0x13c94
jmp 0x13c99
jmp 0x13416
cmp dword [ebp - 4], 0
je 0x13ca1
jmp 0x13ca9
xor ecx, ecx
jne 0x133a9
mov eax, dword [ebp - 4]
pop esi
mov ecx, dword [ebp - 8]
xor ecx, ebp
call fcn.0002bd11
mov esp, ebp
pop ebp
ret