Function at 0x5eb2b0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
add esp, 0xffffff78
push ebx
push esi
push edi
xor edx, edx
mov dword [ebp - 0x88], edx
mov dword [ebp - 0x84], edx
mov dword [ebp - 0x80], edx
mov dword [ebp - 0x7c], edx
mov dword [ebp - 0x78], edx
mov dword [ebp - 0x74], edx
mov dword [ebp - 0x70], edx
mov dword [ebp - 0x6c], edx
mov dword [ebp - 0x68], edx
mov dword [ebp - 0x64], edx
mov dword [ebp - 4], eax
xor eax, eax
push ebp
push 0x5ed881
push dword fs:[eax]
mov dword fs:[eax], esp
mov dword [ebp - 0x38], 0xffffffff
mov eax, dword [ebp - 4]
cmp byte [eax + 0x4c], 1
jne 0x5eb335
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x28]
mov esi, dword [eax + 0xc]
dec esi
cmp esi, 0
jl 0x5eb32b
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x28]
mov eax, dword [eax + 4]
mov ebx, dword [eax + esi*4]
mov eax, ebx
call fcn.00408444
dec esi
cmp esi, 0xffffffff
jne 0x5eb312
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x28]
mov edx, dword [eax]
call dword [edx]
push 0
push 0
push 0
or ecx, 0xffffffff
or edx, 0xffffffff
mov eax, dword [ebp - 4]
mov ebx, dword [eax]
call dword [ebx + 8]
mov bl, 1
mov eax, dword [ebp - 4]
movzx eax, byte [eax + 0x4c]
mov byte [ebp - 0x39], al
dec al
je 0x5eb366
sub al, 2
je 0x5eb3f9
jmp 0x5eb402
mov eax, dword [ebp - 4]
cmp dword [eax + 0x48], 0xffffffff
jne 0x5eb376
xor ebx, ebx
jmp 0x5ed863
mov eax, dword [ebp - 4]
mov byte [eax + 0x4c], 2
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x48]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x38]
mov edx, dword [edx + 4]
mov eax, dword [edx + eax*4]
mov edx, dword [ebp - 4]
mov dword [edx + 0x50], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x50]
mov dword [ebp - 0x54], eax
mov eax, dword [ebp - 0x54]
mov eax, dword [eax]
mov dword [ebp - 0x58], eax
mov eax, dword [ebp - 0x58]
cmp eax, dword [0x5d80e4]
jne 0x5eb3c7
mov dl, 7
mov eax, dword [ebp - 4]
call fcn.005e030c
mov eax, dword [ebp - 4]
mov byte [eax + 0x4c], 1
jmp 0x5ed863
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x50]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 4]
mov dword [edx + 0x54], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x50]
mov eax, dword [eax + 0xc]
mov edx, dword [ebp - 4]
mov dword [edx + 0x58], eax
mov eax, dword [ebp - 4]
mov dword [eax + 0x60], 0xffffffff
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x5c], edx
jmp 0x5eb409
mov eax, dword [ebp - 4]
mov byte [eax + 0x4c], 2
jmp 0x5eb409
xor ebx, ebx
jmp 0x5ed863
mov eax, dword [ebp - 4]
push eax
mov eax, dword [eax]
mov eax, dword [eax]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x64]
call fcn.005eb290
mov dword [ebp - 0x48], eax
mov eax, dword [ebp - 4]
mov byte [eax + 0x4c], 2
jmp 0x5ed7ee
cmp dword [ebp - 0x48], 0
je 0x5eb438
mov eax, dword [ebp - 4]
call dword [ebp - 0x48]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x58]
jb 0x5eb455
mov dl, 0xa
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x54]
movzx esi, byte [edx + eax]
mov eax, dword [ebp - 4]
inc dword [eax + 0x5c]
cmp esi, 0xe
jg 0x5eb4be
je 0x5ed077
cmp esi, 0xd
ja case.default.0x5eb4d5
jmp dword [esi*4 + 0x5eb486]
cmp esi, 0x15
jg 0x5eb4f4
je 0x5ec5de
add esi, 0xfffffff1
cmp esi, 5
ja case.default.0x5eb4d5
jmp dword [esi*4 + 0x5eb4dc]
cmp esi, 0x19
jg 0x5eb51b
je 0x5ec001
sub esi, 0x16
je 0x5ecd19
dec esi
je 0x5ecf96
dec esi
je 0x5eceb5
jmp case.default.0x5eb4d5
sub esi, 0x1a
je 0x5ec053
sub esi, 0xe5
je 0x5ed7ee
jmp case.default.0x5eb4d5
lea edx, [ebp - 0x11]
mov cl, 1
mov eax, dword [ebp - 4]
call fcn.005e9b4c
test al, al
je 0x5ed7fb
cmp byte [ebp - 9], 0
je 0x5eb606
mov eax, dword [ebp - 0xd]
movzx eax, byte [eax + 0xc]
add al, 0xf8
cmp al, 0x1f
ja 0x5eb56b
and eax, 0x7f
bt dword [0x5ed894], eax
jae 0x5eb578
mov edx, dword [ebp - 0xd]
mov eax, dword [ebp - 0x11]
call fcn.005de0f4
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 0xc]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x40]
mov edx, dword [edx + 4]
mov eax, dword [edx + eax*4 - 4]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x40]
sub eax, dword [edx + 0x14]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
dec dword [eax + 0xc]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
inc dword [eax + 0x10]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
cmp dword [eax + 0x10], 0x200
jbe 0x5eb5c6
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005d7900
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov edx, dword [ebp - 0x2c]
mov dword [eax + 0x1c], edx
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 0x18]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x40]
sub eax, dword [edx + 0x1c]
shr eax, 0xc
cmp eax, 2
jle 0x5eb5f7
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005f724c
mov dl, 6
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
lea edx, [ebp - 0x1a]
mov cl, 1
mov eax, dword [ebp - 4]
call fcn.005e9b4c
test al, al
je 0x5ed7fb
mov eax, dword [ebp - 0xd]
push eax
mov eax, dword [ebp - 0x16]
push eax
mov ecx, dword [ebp - 0x1a]
mov edx, dword [ebp - 0x11]
mov eax, dword [ebp - 4]
call fcn.005e23e8
test al, al
jne 0x5eb6ef
cmp byte [ebp - 0x12], 0
je 0x5ed7fb
mov eax, dword [ebp - 0x16]
movzx eax, byte [eax + 0xc]
add al, 0xf8
cmp al, 0x1f
ja 0x5eb65a
and eax, 0x7f
bt dword [0x5ed894], eax
jae 0x5eb667
mov edx, dword [ebp - 0x16]
mov eax, dword [ebp - 0x1a]
call fcn.005de0f4
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 0xc]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x40]
mov edx, dword [edx + 4]
mov eax, dword [edx + eax*4 - 4]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x40]
sub eax, dword [edx + 0x14]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
dec dword [eax + 0xc]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
inc dword [eax + 0x10]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
cmp dword [eax + 0x10], 0x200
jbe 0x5eb6b5
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005d7900
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov edx, dword [ebp - 0x2c]
mov dword [eax + 0x1c], edx
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 0x18]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x40]
sub eax, dword [edx + 0x1c]
shr eax, 0xc
cmp eax, 2
jle 0x5ed7fb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005f724c
jmp 0x5ed7fb
cmp byte [ebp - 0x12], 0
je 0x5ed7ee
mov eax, dword [ebp - 0x16]
movzx eax, byte [eax + 0xc]
add al, 0xf8
cmp al, 0x1f
ja 0x5eb710
and eax, 0x7f
bt dword [0x5ed894], eax
jae 0x5eb71d
mov edx, dword [ebp - 0x16]
mov eax, dword [ebp - 0x1a]
call fcn.005de0f4
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 0xc]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x40]
mov edx, dword [edx + 4]
mov eax, dword [edx + eax*4 - 4]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x40]
sub eax, dword [edx + 0x14]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
dec dword [eax + 0xc]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
inc dword [eax + 0x10]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
cmp dword [eax + 0x10], 0x200
jbe 0x5eb76b
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005d7900
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov edx, dword [ebp - 0x2c]
mov dword [eax + 0x1c], edx
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 0x18]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x40]
sub eax, dword [edx + 0x1c]
shr eax, 0xc
cmp eax, 2
jle 0x5ed7ee
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005f724c
jmp 0x5ed7ee
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x58]
jb 0x5eb7c2
mov dl, 0xa
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x54]
movzx eax, byte [edx + eax]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 4]
inc dword [eax + 0x5c]
lea edx, [ebp - 0x11]
mov cl, 1
mov eax, dword [ebp - 4]
call fcn.005e9b4c
test al, al
je 0x5ed7fb
cmp byte [ebp - 9], 0
je 0x5eb8ac
mov eax, dword [ebp - 0xd]
movzx eax, byte [eax + 0xc]
add al, 0xf8
cmp al, 0x1f
ja 0x5eb811
and eax, 0x7f
bt dword [0x5ed894], eax
jae 0x5eb81e
mov edx, dword [ebp - 0xd]
mov eax, dword [ebp - 0x11]
call fcn.005de0f4
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 0xc]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x40]
mov edx, dword [edx + 4]
mov eax, dword [edx + eax*4 - 4]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x40]
sub eax, dword [edx + 0x14]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
dec dword [eax + 0xc]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
inc dword [eax + 0x10]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
cmp dword [eax + 0x10], 0x200
jbe 0x5eb86c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005d7900
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov edx, dword [ebp - 0x2c]
mov dword [eax + 0x1c], edx
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 0x18]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x40]
sub eax, dword [edx + 0x1c]
shr eax, 0xc
cmp eax, 2
jle 0x5eb89d
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005f724c
mov dl, 6
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
lea edx, [ebp - 0x1a]
mov cl, 1
mov eax, dword [ebp - 4]
call fcn.005e9b4c
test al, al
je 0x5ed7fb
mov eax, dword [ebp - 0xd]
push eax
mov eax, dword [ebp - 0x16]
push eax
mov eax, dword [ebp - 8]
push eax
mov ecx, dword [ebp - 0x1a]
mov edx, dword [ebp - 0x11]
mov eax, dword [ebp - 4]
call fcn.005e5a28
test al, al
jne 0x5eb999
cmp byte [ebp - 0x12], 0
je 0x5ed7fb
mov eax, dword [ebp - 0x16]
movzx eax, byte [eax + 0xc]
add al, 0xf8
cmp al, 0x1f
ja 0x5eb904
and eax, 0x7f
bt dword [0x5ed894], eax
jae 0x5eb911
mov edx, dword [ebp - 0x16]
mov eax, dword [ebp - 0x1a]
call fcn.005de0f4
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 0xc]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x40]
mov edx, dword [edx + 4]
mov eax, dword [edx + eax*4 - 4]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x40]
sub eax, dword [edx + 0x14]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
dec dword [eax + 0xc]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
inc dword [eax + 0x10]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
cmp dword [eax + 0x10], 0x200
jbe 0x5eb95f
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005d7900
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov edx, dword [ebp - 0x2c]
mov dword [eax + 0x1c], edx
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 0x18]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x40]
sub eax, dword [edx + 0x1c]
shr eax, 0xc
cmp eax, 2
jle 0x5ed7fb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005f724c
jmp 0x5ed7fb
cmp byte [ebp - 0x12], 0
je 0x5ed7ee
mov eax, dword [ebp - 0x16]
movzx eax, byte [eax + 0xc]
add al, 0xf8
cmp al, 0x1f
ja 0x5eb9ba
and eax, 0x7f
bt dword [0x5ed894], eax
jae 0x5eb9c7
mov edx, dword [ebp - 0x16]
mov eax, dword [ebp - 0x1a]
call fcn.005de0f4
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 0xc]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x40]
mov edx, dword [edx + 4]
mov eax, dword [edx + eax*4 - 4]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x40]
sub eax, dword [edx + 0x14]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
dec dword [eax + 0xc]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
inc dword [eax + 0x10]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
cmp dword [eax + 0x10], 0x200
jbe 0x5eba15
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005d7900
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov edx, dword [ebp - 0x2c]
mov dword [eax + 0x1c], edx
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 0x18]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x40]
sub eax, dword [edx + 0x1c]
shr eax, 0xc
cmp eax, 2
jle 0x5ed7ee
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005f724c
jmp 0x5ed7ee
lea edx, [ebp - 0x1a]
mov cl, 1
mov eax, dword [ebp - 4]
call fcn.005e9b4c
test al, al
je 0x5ed7fb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x44]
mov edx, dword [ebp - 0x16]
call fcn.005f75dc
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
add eax, 4
mov dword [ebp - 0x11], eax
mov eax, dword [ebp - 0x28]
mov eax, dword [eax]
mov dword [ebp - 0xd], eax
mov byte [ebp - 9], 0
mov eax, dword [ebp - 0xd]
push eax
mov eax, dword [ebp - 0x16]
push eax
mov ecx, dword [ebp - 0x1a]
mov edx, dword [ebp - 0x11]
mov eax, dword [ebp - 4]
call fcn.005e23e8
test al, al
jne 0x5ebb5e
cmp byte [ebp - 0x12], 0
je 0x5ed7fb
mov eax, dword [ebp - 0x16]
movzx eax, byte [eax + 0xc]
add al, 0xf8
cmp al, 0x1f
ja 0x5ebac9
and eax, 0x7f
bt dword [0x5ed894], eax
jae 0x5ebad6
mov edx, dword [ebp - 0x16]
mov eax, dword [ebp - 0x1a]
call fcn.005de0f4
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 0xc]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x40]
mov edx, dword [edx + 4]
mov eax, dword [edx + eax*4 - 4]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x40]
sub eax, dword [edx + 0x14]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
dec dword [eax + 0xc]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
inc dword [eax + 0x10]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
cmp dword [eax + 0x10], 0x200
jbe 0x5ebb24
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005d7900
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov edx, dword [ebp - 0x2c]
mov dword [eax + 0x1c], edx
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 0x18]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x40]
sub eax, dword [edx + 0x1c]
shr eax, 0xc
cmp eax, 2
jle 0x5ed7fb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005f724c
jmp 0x5ed7fb
cmp byte [ebp - 0x12], 0
je 0x5ed7ee
mov eax, dword [ebp - 0x16]
movzx eax, byte [eax + 0xc]
add al, 0xf8
cmp al, 0x1f
ja 0x5ebb7f
and eax, 0x7f
bt dword [0x5ed894], eax
jae 0x5ebb8c
mov edx, dword [ebp - 0x16]
mov eax, dword [ebp - 0x1a]
call fcn.005de0f4
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 0xc]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x40]
mov edx, dword [edx + 4]
mov eax, dword [edx + eax*4 - 4]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x40]
sub eax, dword [edx + 0x14]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
dec dword [eax + 0xc]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
inc dword [eax + 0x10]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
cmp dword [eax + 0x10], 0x200
jbe 0x5ebbda
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005d7900
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov edx, dword [ebp - 0x2c]
mov dword [eax + 0x1c], edx
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 0x18]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x40]
sub eax, dword [edx + 0x1c]
shr eax, 0xc
cmp eax, 2
jle 0x5ed7ee
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005f724c
jmp 0x5ed7ee
lea edx, [ebp - 0x1a]
mov cl, 1
mov eax, dword [ebp - 4]
call fcn.005e9b4c
test al, al
je 0x5ed7fb
cmp byte [ebp - 0x12], 0
je 0x5ebc49
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005f7530
mov dl, 6
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
mov dl, 0xd
mov eax, dword [ebp - 4]
call fcn.005eadb8
mov edx, eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x44]
call fcn.005f75dc
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x16]
cmp byte [eax + 0xc], 0xd
jne 0x5ebc92
mov eax, dword [ebp - 0x1a]
mov eax, dword [eax]
mov edx, dword [ebp - 0x28]
mov dword [edx + 4], eax
mov eax, dword [ebp - 0x1a]
add eax, 4
mov eax, dword [eax]
mov edx, dword [ebp - 0x28]
mov dword [edx + 8], eax
mov eax, dword [ebp - 0x28]
xor edx, edx
mov dword [eax + 0xc], edx
jmp 0x5ed7ee
mov eax, dword [ebp - 0x28]
mov edx, dword [ebp - 0x1a]
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x28]
mov edx, dword [ebp - 0x16]
mov dword [eax + 8], edx
mov eax, dword [ebp - 0x28]
xor edx, edx
mov dword [eax + 0xc], edx
jmp 0x5ed7ee
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x44]
cmp dword [eax + 0xc], 0
jne 0x5ebccc
mov dl, 0xb
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x44]
mov eax, dword [eax + 0xc]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x44]
mov edx, dword [edx + 4]
mov eax, dword [edx + eax*4 - 4]
mov dword [ebp - 0x28], eax
cmp dword [ebp - 0x28], 0
je 0x5ebcf6
mov eax, dword [ebp - 0x28]
mov eax, dword [eax]
cmp byte [eax + 0xc], 0
jne 0x5ebd05
mov dl, 0xb
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x44]
call fcn.005f7530
jmp 0x5ed7ee
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
add eax, 3
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x58]
jb 0x5ebd35
mov dl, 0xa
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x54]
mov eax, dword [edx + eax]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 4]
add dword [eax + 0x5c], 4
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x38]
mov eax, dword [eax + 0xc]
cmp eax, dword [ebp - 0x2c]
ja 0x5ebd6b
mov dl, 9
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x38]
mov eax, dword [eax + 4]
mov edx, dword [ebp - 0x2c]
mov eax, dword [eax + edx*4]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
mov eax, dword [eax]
mov dword [ebp - 0x5c], eax
mov eax, dword [ebp - 0x5c]
cmp eax, dword [0x5d80e4]
jne 0x5ebf70
xor eax, eax
push ebp
push 0x5ebdec
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x44]
push eax
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x3c]
mov ebx, dword [ebp - 0x34]
mov edx, dword [ebp - 0x34]
mov eax, dword [ebp - 4]
call dword [ebx + 0x14]
test al, al
jne 0x5ebddf
mov eax, dword [ebp - 4]
cmp byte [eax + 0x7c], 0
jne 0x5ebdd2
mov dl, 0x11
mov eax, dword [ebp - 4]
call fcn.005e030c
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x5ed7fb
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x5ed7ee
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x18]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x44]
call fcn.005f75dc
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
add eax, 4
mov dword [ebp - 0x11], eax
mov eax, dword [ebp - 0x28]
mov eax, dword [eax]
mov dword [ebp - 0xd], eax
mov byte [ebp - 9], 0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x50]
mov edx, dword [ebp - 0x28]
mov dword [edx + 4], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov edx, dword [ebp - 0x28]
mov dword [edx + 8], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x60]
mov edx, dword [ebp - 0x28]
mov dword [edx + 0xc], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x44]
mov eax, dword [eax + 0xc]
dec eax
mov edx, dword [ebp - 4]
mov dword [edx + 0x60], eax
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x34]
mov dword [eax + 0x50], edx
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x50]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 4]
mov dword [edx + 0x54], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x50]
mov eax, dword [eax + 0xc]
mov edx, dword [ebp - 4]
mov dword [edx + 0x58], eax
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x5c], edx
jmp 0x5ed7ee
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x44]
call fcn.005f7530
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
add eax, 3
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x58]
jb 0x5ec02c
mov dl, 0xa
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x54]
mov eax, dword [edx + eax]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 4]
add dword [eax + 0x5c], 4
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x2c]
add dword [eax + 0x5c], edx
jmp 0x5ed7ee
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x44]
call fcn.005f7530
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x44]
call fcn.005f7530
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
add eax, 3
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x58]
jb 0x5ec089
mov dl, 0xa
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x54]
mov eax, dword [edx + eax]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 4]
add dword [eax + 0x5c], 4
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x2c]
add dword [eax + 0x5c], edx
jmp 0x5ed7ee
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
add eax, 3
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x58]
jb 0x5ec0d0
mov dl, 0xa
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x54]
mov eax, dword [edx + eax]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 4]
add dword [eax + 0x5c], 4
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x2c]
add dword [eax + 0x5c], edx
jmp 0x5ed7ee
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
add eax, 3
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x58]
jb 0x5ec117
mov dl, 0xa
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x54]
mov eax, dword [edx + eax]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 4]
add dword [eax + 0x5c], 4
mov byte [ebp - 0x41], 1
lea edx, [ebp - 0x1a]
movzx ecx, byte [ebp - 0x41]
mov eax, dword [ebp - 4]
call fcn.005e9b4c
test al, al
je 0x5ed7fb
mov eax, dword [ebp - 0x16]
movzx eax, byte [eax + 0xc]
cmp eax, 6
ja case.0x5ec157.0
jmp dword [eax*4 + 0x5ec15e]
mov eax, dword [ebp - 0x1a]
cmp byte [eax], 0
setne byte [ebp - 0x41]
jmp 0x5ec1e8
mov eax, dword [ebp - 0x1a]
cmp byte [eax], 0
setne byte [ebp - 0x41]
jmp 0x5ec1e8
mov eax, dword [ebp - 0x1a]
cmp word [eax], 0
setne byte [ebp - 0x41]
jmp 0x5ec1e8
mov eax, dword [ebp - 0x1a]
cmp word [eax], 0
setne byte [ebp - 0x41]
jmp 0x5ec1e8
mov eax, dword [ebp - 0x1a]
cmp dword [eax], 0
setne byte [ebp - 0x41]
jmp 0x5ec1e8
mov eax, dword [ebp - 0x1a]
cmp dword [eax], 0
setne byte [ebp - 0x41]
jmp 0x5ec1e8
mov dl, 2
mov eax, dword [ebp - 4]
call fcn.005e030c
cmp byte [ebp - 0x12], 0
je 0x5ed7fb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005f7530
jmp 0x5ed7fb
cmp byte [ebp - 0x12], 0
je 0x5ec1f9
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005f7530
cmp byte [ebp - 0x41], 0
je 0x5ed7ee
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x2c]
add dword [eax + 0x5c], edx
jmp 0x5ed7ee
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
add eax, 3
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x58]
jb 0x5ec231
mov dl, 0xa
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x54]
mov eax, dword [edx + eax]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 4]
add dword [eax + 0x5c], 4
mov byte [ebp - 0x41], 1
lea edx, [ebp - 0x1a]
movzx ecx, byte [ebp - 0x41]
mov eax, dword [ebp - 4]
call fcn.005e9b4c
test al, al
je 0x5ed7fb
mov eax, dword [ebp - 0x16]
movzx eax, byte [eax + 0xc]
cmp eax, 6
ja case.0x5ec271.0
jmp dword [eax*4 + 0x5ec278]
mov eax, dword [ebp - 0x1a]
cmp byte [eax], 0
sete byte [ebp - 0x41]
jmp 0x5ec302
mov eax, dword [ebp - 0x1a]
cmp byte [eax], 0
sete byte [ebp - 0x41]
jmp 0x5ec302
mov eax, dword [ebp - 0x1a]
cmp word [eax], 0
sete byte [ebp - 0x41]
jmp 0x5ec302
mov eax, dword [ebp - 0x1a]
cmp word [eax], 0
sete byte [ebp - 0x41]
jmp 0x5ec302
mov eax, dword [ebp - 0x1a]
cmp dword [eax], 0
sete byte [ebp - 0x41]
jmp 0x5ec302
mov eax, dword [ebp - 0x1a]
cmp dword [eax], 0
sete byte [ebp - 0x41]
jmp 0x5ec302
mov dl, 2
mov eax, dword [ebp - 4]
call fcn.005e030c
cmp byte [ebp - 0x12], 0
je 0x5ed7fb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005f7530
jmp 0x5ed7fb
cmp byte [ebp - 0x12], 0
je 0x5ec313
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005f7530
cmp byte [ebp - 0x41], 0
je 0x5ed7ee
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x2c]
add dword [eax + 0x5c], edx
jmp 0x5ed7ee
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
dec eax
mov dword [ebp - 0x38], eax
xor eax, eax
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x28]
cmp dword [eax + 0xc], 0
jbe 0x5ec437
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x28]
mov eax, dword [eax + 0xc]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x28]
mov edx, dword [edx + 4]
mov ebx, dword [edx + eax*4 - 4]
jmp 0x5ec413
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x44]
mov eax, dword [eax + 0xc]
cmp eax, dword [ebx + 0xc]
jbe 0x5ec398
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x44]
mov eax, dword [eax + 0xc]
dec eax
mov edx, dword [ebx + 0xc]
sub edx, eax
ja 0x5ec398
dec edx
mov dword [ebp - 0x4c], edx
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x44]
call fcn.005f7530
inc dword [ebp - 0x4c]
jne 0x5ec388
mov eax, dword [ebx + 8]
mov edx, dword [ebp - 4]
mov dword [edx + 0x60], eax
cmp dword [ebx + 0x10], 0xffffffff
je 0x5ec3c0
mov eax, dword [ebx + 0x10]
mov edx, dword [ebp - 4]
mov dword [edx + 0x5c], eax
mov dword [ebx + 0x10], 0xffffffff
mov dword [ebp - 0x30], 1
jmp 0x5ec437
cmp dword [ebx + 0x18], 0xffffffff
je 0x5ec3df
mov eax, dword [ebx + 0x18]
mov edx, dword [ebp - 4]
mov dword [edx + 0x5c], eax
mov dword [ebx + 0x18], 0xffffffff
mov dword [ebp - 0x30], 1
jmp 0x5ec437
mov eax, ebx
call fcn.00408444
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x28]
call fcn.005d79ac
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x28]
cmp dword [eax + 0xc], 0
je 0x5ec437
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x28]
mov eax, dword [eax + 0xc]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x28]
mov edx, dword [edx + 4]
mov ebx, dword [edx + eax*4 - 4]
mov eax, dword [ebx + 8]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x60]
je 0x5ec365
mov eax, dword [ebx + 8]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x60]
jbe 0x5ec437
cmp dword [ebx + 8], 0xffffffff
jne 0x5ec365
cmp dword [ebp - 0x30], 0
jne 0x5ed7ee
mov dword [ebp - 0x38], 0xffffffff
mov eax, dword [ebp - 4]
cmp dword [eax + 0x60], 0xffffffff
jne 0x5ec460
movzx eax, byte [ebp - 0x39]
mov edx, dword [ebp - 4]
mov byte [edx + 0x4c], al
jmp 0x5ed7fb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x44]
mov eax, dword [eax + 0xc]
dec eax
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x60]
inc edx
sub edx, eax
jg 0x5ec489
dec edx
mov dword [ebp - 0x50], edx
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x44]
call fcn.005f7530
inc dword [ebp - 0x50]
jne 0x5ec479
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x60]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x44]
cmp eax, dword [edx + 0xc]
jb 0x5ec4a9
movzx eax, byte [ebp - 0x39]
mov edx, dword [ebp - 4]
mov byte [edx + 0x4c], al
jmp 0x5ed7fb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x60]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x44]
mov edx, dword [edx + 4]
mov eax, dword [edx + eax*4]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + 4]
mov edx, dword [ebp - 4]
mov dword [edx + 0x50], eax
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 4]
mov dword [edx + 0x5c], eax
mov eax, dword [ebp - 0x28]
mov eax, dword [eax + 0xc]
mov edx, dword [ebp - 4]
mov dword [edx + 0x60], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x44]
call fcn.005f7530
mov eax, dword [ebp - 4]
cmp dword [eax + 0x50], 0
jne 0x5ec505
movzx eax, byte [ebp - 0x39]
mov edx, dword [ebp - 4]
mov byte [edx + 0x4c], al
jmp 0x5ed7fb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x50]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 4]
mov dword [edx + 0x54], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x50]
mov eax, dword [eax + 0xc]
mov edx, dword [ebp - 4]
mov dword [edx + 0x58], eax
jmp 0x5ed7ee
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
add eax, 3
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x58]
jb 0x5ec548
mov dl, 0xa
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x54]
mov eax, dword [edx + eax]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 4]
add dword [eax + 0x5c], 4
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x34]
mov eax, dword [eax + 0xc]
cmp eax, dword [ebp - 0x2c]
jae 0x5ec57e
mov dl, 2
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x34]
mov eax, dword [eax + 4]
mov edx, dword [ebp - 0x2c]
mov edx, dword [eax + edx*4]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x44]
call fcn.005f75dc
jmp 0x5ed7ee
lea edx, [ebp - 0x11]
mov cl, 1
mov eax, dword [ebp - 4]
call fcn.005e9b4c
test al, al
je 0x5ed7fb
cmp byte [ebp - 9], 0
je 0x5ec5c3
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005f7530
mov ecx, dword [ebp - 0xd]
mov edx, dword [ebp - 0x11]
mov eax, dword [ebp - 4]
call fcn.005ea7b8
test al, al
je 0x5ed7fb
jmp 0x5ed7ee
lea edx, [ebp - 0x11]
mov cl, 1
mov eax, dword [ebp - 4]
call fcn.005e9b4c
test al, al
je 0x5ed7fb
cmp byte [ebp - 9], 0
je 0x5ec604
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005f7530
mov ecx, dword [ebp - 0xd]
mov edx, dword [ebp - 0x11]
mov eax, dword [ebp - 4]
call fcn.005eb158
test al, al
je 0x5ed7fb
jmp 0x5ed7ee
lea edx, [ebp - 0x11]
mov cl, 1
mov eax, dword [ebp - 4]
call fcn.005e9b4c
test al, al
je 0x5ed7fb
cmp byte [ebp - 9], 0
je 0x5ec645
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005f7530
mov ecx, dword [ebp - 0xd]
mov edx, dword [ebp - 0x11]
mov eax, dword [ebp - 4]
call fcn.005ea62c
test al, al
je 0x5ed7fb
jmp 0x5ed7ee
lea edx, [ebp - 0x11]
mov cl, 1
mov eax, dword [ebp - 4]
call fcn.005e9b4c
test al, al
je 0x5ed7fb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x58]
jb 0x5ec6a7
mov dl, 0xa
mov eax, dword [ebp - 4]
call fcn.005e030c
cmp byte [ebp - 9], 0
je 0x5ed7fb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005f7530
jmp 0x5ed7fb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x54]
movzx eax, byte [edx + eax]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 4]
inc dword [eax + 0x5c]
mov eax, dword [ebp - 0xd]
movzx eax, byte [eax + 0xc]
cmp eax, 6
ja case.0x5ec6d0.0
jmp dword [eax*4 + 0x5ec6d7]
mov eax, dword [ebp - 0x11]
cmp byte [eax], 0
setne al
mov edx, dword [ebp - 4]
mov byte [edx + 0x10], al
jmp 0x5ec77f
mov eax, dword [ebp - 0x11]
cmp byte [eax], 0
setne al
mov edx, dword [ebp - 4]
mov byte [edx + 0x10], al
jmp 0x5ec77f
mov eax, dword [ebp - 0x11]
cmp word [eax], 0
setne al
mov edx, dword [ebp - 4]
mov byte [edx + 0x10], al
jmp 0x5ec77f
mov eax, dword [ebp - 0x11]
cmp word [eax], 0
setne al
mov edx, dword [ebp - 4]
mov byte [edx + 0x10], al
jmp 0x5ec77f
mov eax, dword [ebp - 0x11]
cmp dword [eax], 0
setne al
mov edx, dword [ebp - 4]
mov byte [edx + 0x10], al
jmp 0x5ec77f
mov eax, dword [ebp - 0x11]
cmp dword [eax], 0
setne al
mov edx, dword [ebp - 4]
mov byte [edx + 0x10], al
jmp 0x5ec77f
mov dl, 2
mov eax, dword [ebp - 4]
call fcn.005e030c
cmp byte [ebp - 9], 0
je 0x5ed7fb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005f7530
jmp 0x5ed7fb
cmp dword [ebp - 0x2c], 0
je 0x5ec794
mov eax, dword [ebp - 4]
movzx eax, byte [eax + 0x10]
xor al, 1
mov edx, dword [ebp - 4]
mov byte [edx + 0x10], al
cmp byte [ebp - 9], 0
je 0x5ed7ee
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005f7530
jmp 0x5ed7ee
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
add eax, 3
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x58]
jb 0x5ec7ce
mov dl, 0xa
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x54]
mov eax, dword [edx + eax]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 4]
add dword [eax + 0x5c], 4
mov eax, dword [ebp - 4]
cmp byte [eax + 0x10], 0
je 0x5ed7ee
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x2c]
add dword [eax + 0x5c], edx
jmp 0x5ed7ee
mov dl, 1
mov eax, dword [0x5dc038]
call fcn.00408414
mov ebx, eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x50]
mov dword [ebx + 4], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x60]
mov dword [ebx + 8], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x44]
mov eax, dword [eax + 0xc]
mov dword [ebx + 0xc], eax
lea edx, [ebx + 0x10]
mov eax, dword [ebp - 4]
call fcn.005ea964
test al, al
jne 0x5ec853
mov dl, 0xa
mov eax, dword [ebp - 4]
call fcn.005e030c
mov eax, ebx
ret
call fcn.00408444
jmp 0x5ed7fb
lea edx, [ebx + 0x14]
mov eax, dword [ebp - 4]
call fcn.005ea964
test al, al
jne 0x5ec878
mov dl, 0xa
mov eax, dword [ebp - 4]
call fcn.005e030c
mov eax, ebx
call fcn.00408444
jmp 0x5ed7fb
lea edx, [ebx + 0x18]
mov eax, dword [ebp - 4]
call fcn.005ea964
test al, al
jne 0x5ec89d
mov dl, 0xa
mov eax, dword [ebp - 4]
call fcn.005e030c
mov eax, ebx
call fcn.00408444
jmp 0x5ed7fb
lea edx, [ebx + 0x1c]
mov eax, dword [ebp - 4]
call fcn.005ea964
test al, al
jne 0x5ec8c2
mov dl, 0xa
mov eax, dword [ebp - 4]
call fcn.005e030c
mov eax, ebx
call fcn.00408444
jmp 0x5ed7fb
cmp dword [ebx + 0x10], 0xffffffff
je 0x5ec8d1
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
add dword [ebx + 0x10], eax
cmp dword [ebx + 0x14], 0xffffffff
je 0x5ec8e0
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
add dword [ebx + 0x14], eax
cmp dword [ebx + 0x18], 0xffffffff
je 0x5ec8ef
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
add dword [ebx + 0x18], eax
cmp dword [ebx + 0x1c], 0xffffffff
je 0x5ec8fe
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
add dword [ebx + 0x1c], eax
cmp dword [ebx + 0x10], 0xffffffff
je 0x5ec90f
mov eax, dword [ebx + 0x10]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x58]
jae 0x5ec942
cmp dword [ebx + 0x14], 0xffffffff
je 0x5ec920
mov eax, dword [ebx + 0x14]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x58]
jae 0x5ec942
cmp dword [ebx + 0x18], 0xffffffff
je 0x5ec931
mov eax, dword [ebx + 0x18]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x58]
jae 0x5ec942
cmp dword [ebx + 0x1c], 0xffffffff
je 0x5ec958
mov eax, dword [ebx + 0x1c]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x58]
jb 0x5ec958
mov dl, 0xa
mov eax, dword [ebp - 4]
call fcn.005e030c
mov eax, ebx
call fcn.00408444
jmp 0x5ed7fb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x28]
mov edx, ebx
call fcn.005d7964
jmp 0x5ed7ee
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x58]
jb 0x5ec987
mov dl, 0xa
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x54]
movzx eax, byte [edx + eax]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 4]
inc dword [eax + 0x5c]
mov eax, dword [ebp - 0x2c]
sub eax, 1
jb 0x5eca61
je 0x5ecb43
dec eax
je 0x5ec9c1
dec eax
je 0x5ecc6d
jmp 0x5ed7ee
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x28]
cmp dword [eax + 0xc], 0
jne 0x5ec9dc
mov dl, 0xa
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x28]
mov eax, dword [eax + 0xc]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x28]
mov edx, dword [edx + 4]
mov ebx, dword [edx + eax*4 - 4]
test ebx, ebx
jne 0x5eca05
mov dl, 0xa
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
mov dword [ebx + 0x14], 0xffffffff
cmp dword [ebx + 0x18], 0xffffffff
je 0x5eca27
mov eax, dword [ebx + 0x18]
mov edx, dword [ebp - 4]
mov dword [edx + 0x5c], eax
mov dword [ebx + 0x18], 0xffffffff
jmp 0x5ed7ee
mov eax, dword [ebx + 0x1c]
mov dword [ebp - 0x2c], eax
mov eax, ebx
call fcn.00408444
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x28]
call fcn.005d79ac
cmp dword [ebp - 0x38], 0xffffffff
je 0x5eca53
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x38]
mov dword [eax + 0x5c], edx
jmp 0x5ed7ee
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x2c]
mov dword [eax + 0x5c], edx
jmp 0x5ed7ee
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x28]
mov eax, dword [eax + 0xc]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x28]
mov edx, dword [edx + 4]
mov ebx, dword [edx + eax*4 - 4]
test ebx, ebx
jne 0x5eca8a
mov dl, 0xa
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
cmp dword [ebx + 0x10], 0xffffffff
je 0x5ecaa5
mov eax, dword [ebx + 0x10]
mov edx, dword [ebp - 4]
mov dword [edx + 0x5c], eax
mov dword [ebx + 0x10], 0xffffffff
jmp 0x5ed7ee
cmp dword [ebx + 0x18], 0xffffffff
je 0x5ecac0
mov eax, dword [ebx + 0x18]
mov edx, dword [ebp - 4]
mov dword [edx + 0x5c], eax
mov dword [ebx + 0x14], 0xffffffff
jmp 0x5ed7ee
mov eax, dword [ebx + 0x1c]
mov dword [ebp - 0x2c], eax
mov eax, ebx
call fcn.00408444
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x28]
call fcn.005d79ac
mov eax, dword [ebp - 4]
cmp byte [eax + 0x7c], 0
je 0x5ecb21
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x70]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x70], edx
mov eax, dword [ebp - 4]
movzx eax, byte [eax + 0x7c]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x80]
push eax
mov eax, dword [ebp - 0x40]
push eax
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x78]
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x74]
mov eax, dword [ebp - 4]
mov ebx, dword [eax]
call dword [ebx + 8]
jmp 0x5ed7ee
cmp dword [ebp - 0x38], 0xffffffff
je 0x5ecb35
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x38]
mov dword [eax + 0x5c], edx
jmp 0x5ed7ee
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x2c]
mov dword [eax + 0x5c], edx
jmp 0x5ed7ee
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x28]
mov eax, dword [eax + 0xc]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x28]
mov edx, dword [edx + 4]
mov ebx, dword [edx + eax*4 - 4]
test ebx, ebx
jne 0x5ecb6c
mov dl, 0xa
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
mov eax, dword [ebp - 4]
cmp byte [eax + 0x7c], 0
je 0x5ecbc9
cmp dword [ebx + 0x14], 0xffffffff
je 0x5ecbc9
cmp dword [ebx + 0x14], 0xfffffffe
je 0x5ecbc9
mov eax, dword [ebx + 0x14]
mov edx, dword [ebp - 4]
mov dword [edx + 0x5c], eax
mov dword [ebx + 0x14], 0xfffffffe
mov eax, dword [ebp - 4]
movzx eax, byte [eax + 0x7c]
mov byte [ebx + 0x20], al
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x70]
mov dword [ebx + 0x24], eax
lea eax, [ebx + 0x28]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x80]
call fcn.0040a644
mov eax, dword [ebp - 4]
mov byte [eax + 0x7c], 0
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x70], edx
jmp 0x5ed7ee
cmp dword [ebx + 0x18], 0xffffffff
je 0x5ecbe4
mov eax, dword [ebx + 0x18]
mov edx, dword [ebp - 4]
mov dword [edx + 0x5c], eax
mov dword [ebx + 0x18], 0xffffffff
jmp 0x5ed7ee
mov eax, dword [ebx + 0x1c]
mov dword [ebp - 0x2c], eax
mov eax, ebx
call fcn.00408444
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x28]
call fcn.005d79ac
mov eax, dword [ebp - 4]
cmp byte [eax + 0x7c], 0
je 0x5ecc4b
cmp dword [ebp - 0x2c], 0xffffffff
je 0x5ecc4b
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x70]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x70], edx
mov eax, dword [ebp - 4]
movzx eax, byte [eax + 0x7c]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x80]
push eax
mov eax, dword [ebp - 0x40]
push eax
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x78]
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x74]
mov eax, dword [ebp - 4]
mov ebx, dword [eax]
call dword [ebx + 8]
jmp 0x5ed7ee
cmp dword [ebp - 0x38], 0xffffffff
je 0x5ecc5f
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x38]
mov dword [eax + 0x5c], edx
jmp 0x5ed7ee
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x2c]
mov dword [eax + 0x5c], edx
jmp 0x5ed7ee
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x28]
mov eax, dword [eax + 0xc]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x28]
mov edx, dword [edx + 4]
mov ebx, dword [edx + eax*4 - 4]
test ebx, ebx
jne 0x5ecc96
mov dl, 0xa
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
mov eax, dword [ebx + 0x1c]
mov dword [ebp - 0x2c], eax
mov eax, ebx
call fcn.00408444
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x28]
call fcn.005d79ac
mov eax, dword [ebp - 4]
cmp byte [eax + 0x7c], 0
je 0x5eccf7
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x70]
mov dword [ebp - 0x40], eax
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x70], edx
mov eax, dword [ebp - 4]
movzx eax, byte [eax + 0x7c]
push eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x80]
push eax
mov eax, dword [ebp - 0x40]
push eax
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x78]
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x74]
mov eax, dword [ebp - 4]
mov ebx, dword [eax]
call dword [ebx + 8]
jmp 0x5ed7ee
cmp dword [ebp - 0x38], 0xffffffff
je 0x5ecd0b
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x38]
mov dword [eax + 0x5c], edx
jmp 0x5ed7ee
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x2c]
mov dword [eax + 0x5c], edx
jmp 0x5ed7ee
lea edx, [ebp - 0x11]
xor ecx, ecx
mov eax, dword [ebp - 4]
call fcn.005e9b4c
test al, al
je 0x5ed7fb
cmp byte [ebp - 9], 0
je 0x5ecd4e
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005f7530
mov dl, 6
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
mov eax, dword [ebp - 0xd]
cmp byte [eax + 0xc], 0xd
je 0x5ecd66
mov dl, 6
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
lea edx, [ebp - 0x1a]
xor ecx, ecx
mov eax, dword [ebp - 4]
call fcn.005e9b4c
test al, al
je 0x5ed7fb
mov eax, dword [ebp - 0x11]
add eax, 8
cmp dword [eax], 0
je 0x5ecd98
mov eax, dword [ebp - 0x11]
add eax, 4
mov edx, dword [eax]
mov eax, dword [ebp - 0x11]
mov eax, dword [eax]
call fcn.005de39c
mov eax, dword [ebp - 0x16]
cmp byte [eax + 0xc], 0xd
jne 0x5ece3d
mov eax, dword [ebp - 0x1a]
cmp dword [eax], 0
je 0x5ece20
mov eax, dword [ebp - 0x1a]
add eax, 4
mov eax, dword [eax]
call fcn.005de380
mov edx, dword [ebp - 0x11]
mov dword [edx], eax
mov eax, dword [ebp - 0x1a]
add eax, 4
mov eax, dword [eax]
mov edx, dword [ebp - 0x11]
add edx, 4
mov dword [edx], eax
mov eax, dword [ebp - 0x11]
add eax, 8
mov dword [eax], 1
mov eax, dword [ebp - 0x11]
add eax, 4
mov eax, dword [eax]
push eax
mov eax, dword [ebp - 0x1a]
mov edx, dword [eax]
mov eax, dword [ebp - 0x11]
mov eax, dword [eax]
mov ecx, 1
call fcn.005e1c78
test al, al
jne 0x5ece9b
cmp byte [ebp - 0x12], 0
je 0x5ece11
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005f7530
mov dl, 0xc
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
mov eax, dword [ebp - 0x11]
xor edx, edx
mov dword [eax], edx
mov eax, dword [ebp - 0x11]
add eax, 4
xor edx, edx
mov dword [eax], edx
mov eax, dword [ebp - 0x11]
add eax, 8
xor edx, edx
mov dword [eax], edx
jmp 0x5ece9b
mov eax, dword [ebp - 0x16]
call fcn.005de380
mov edx, dword [ebp - 0x11]
mov dword [edx], eax
mov eax, dword [ebp - 0x11]
add eax, 4
mov edx, dword [ebp - 0x16]
mov dword [eax], edx
mov eax, dword [ebp - 0x11]
add eax, 8
mov dword [eax], 0xffffffff
mov eax, dword [ebp - 0x16]
push eax
mov eax, dword [ebp - 0x11]
mov eax, dword [eax]
mov ecx, 1
mov edx, dword [ebp - 0x1a]
call fcn.005e1c78
test al, al
jne 0x5ece9b
cmp byte [ebp - 0x12], 0
je 0x5ece8c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005f7530
mov dl, 0xc
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
cmp byte [ebp - 0x12], 0
je 0x5ed7ee
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005f7530
jmp 0x5ed7ee
lea edx, [ebp - 0x11]
mov cl, 1
mov eax, dword [ebp - 4]
call fcn.005e9b4c
test al, al
je 0x5ed7fb
cmp byte [ebp - 9], 0
je 0x5eceea
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005f7530
mov dl, 6
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
mov eax, dword [ebp - 0xd]
movzx eax, byte [eax + 0xc]
cmp eax, 0x11
ja case.0x5ecf01.0
movzx eax, byte [eax + 0x5ecf08]
jmp dword [eax*4 + 0x5ecf1a]
mov eax, dword [ebp - 0x11]
dec byte [eax]
jmp 0x5ed7ee
mov eax, dword [ebp - 0x11]
dec byte [eax]
jmp 0x5ed7ee
mov eax, dword [ebp - 0x11]
dec word [eax]
jmp 0x5ed7ee
mov eax, dword [ebp - 0x11]
dec word [eax]
jmp 0x5ed7ee
mov eax, dword [ebp - 0x11]
dec dword [eax]
jmp 0x5ed7ee
mov eax, dword [ebp - 0x11]
dec dword [eax]
jmp 0x5ed7ee
mov eax, dword [ebp - 0x11]
sub dword [eax], 1
sbb dword [eax + 4], 0
jmp 0x5ed7ee
mov dl, 0xc
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
lea edx, [ebp - 0x11]
mov cl, 1
mov eax, dword [ebp - 4]
call fcn.005e9b4c
test al, al
je 0x5ed7fb
cmp byte [ebp - 9], 0
je 0x5ecfcb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005f7530
mov dl, 6
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
mov eax, dword [ebp - 0xd]
movzx eax, byte [eax + 0xc]
cmp eax, 0x11
ja case.0x5ecfe2.0
movzx eax, byte [eax + 0x5ecfe9]
jmp dword [eax*4 + 0x5ecffb]
mov eax, dword [ebp - 0x11]
inc byte [eax]
jmp 0x5ed7ee
mov eax, dword [ebp - 0x11]
inc byte [eax]
jmp 0x5ed7ee
mov eax, dword [ebp - 0x11]
inc word [eax]
jmp 0x5ed7ee
mov eax, dword [ebp - 0x11]
inc word [eax]
jmp 0x5ed7ee
mov eax, dword [ebp - 0x11]
inc dword [eax]
jmp 0x5ed7ee
mov eax, dword [ebp - 0x11]
inc dword [eax]
jmp 0x5ed7ee
mov eax, dword [ebp - 0x11]
add dword [eax], 1
adc dword [eax + 4], 0
jmp 0x5ed7ee
mov dl, 0xc
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
lea edx, [ebp - 0x11]
xor ecx, ecx
mov eax, dword [ebp - 4]
call fcn.005e9b4c
test al, al
je 0x5ed7fb
cmp byte [ebp - 9], 0
je 0x5ed0ac
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005f7530
mov dl, 6
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
mov eax, dword [ebp - 0xd]
cmp byte [eax + 0xc], 0xd
je 0x5ed0c4
mov dl, 6
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
lea edx, [ebp - 0x1a]
xor ecx, ecx
mov eax, dword [ebp - 4]
call fcn.005e9b4c
test al, al
je 0x5ed7fb
cmp byte [ebp - 0x12], 0
je 0x5ed0f9
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005f7530
mov dl, 6
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
mov eax, dword [ebp - 0x16]
cmp byte [eax + 0xc], 0xd
jne 0x5ed121
mov eax, dword [ebp - 0x1a]
mov eax, dword [eax]
mov edx, dword [ebp - 0x11]
mov dword [edx], eax
mov eax, dword [ebp - 0x1a]
add eax, 4
mov eax, dword [eax]
mov edx, dword [ebp - 0x11]
add edx, 4
mov dword [edx], eax
jmp 0x5ed7ee
mov eax, dword [ebp - 0x11]
mov edx, dword [ebp - 0x1a]
mov dword [eax], edx
mov eax, dword [ebp - 0x11]
add eax, 4
mov edx, dword [ebp - 0x16]
mov dword [eax], edx
jmp 0x5ed7ee
lea edx, [ebp - 0x11]
mov cl, 1
mov eax, dword [ebp - 4]
call fcn.005e9b4c
test al, al
je 0x5ed7fb
mov eax, dword [ebp - 0xd]
cmp byte [eax + 0xc], 0x15
je 0x5ed177
cmp byte [ebp - 9], 0
je 0x5ed168
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005f7530
mov dl, 0xc
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
mov eax, dword [ebp - 0x11]
mov eax, dword [eax]
mov dword [ebp - 0x2c], eax
cmp byte [ebp - 9], 0
je 0x5ed190
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005f7530
cmp dword [ebp - 0x2c], 0
jne 0x5ed1ca
mov eax, dword [ebp - 0x11]
add eax, 8
cmp dword [eax], 0
je 0x5ed1ca
mov eax, dword [ebp - 0x11]
add eax, 8
mov eax, dword [eax]
push eax
mov eax, dword [ebp - 0x11]
add eax, 4
mov ecx, dword [eax]
mov edx, dword [ebp - 0xd]
mov eax, dword [ebp - 4]
call fcn.005f5b14
test al, al
je 0x5ed7fb
jmp 0x5ed7ee
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x38]
mov eax, dword [eax + 0xc]
cmp eax, dword [ebp - 0x2c]
jbe 0x5ed1e3
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x48]
cmp eax, dword [ebp - 0x2c]
jne 0x5ed1f2
mov dl, 9
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x38]
mov eax, dword [eax + 4]
mov edx, dword [ebp - 0x2c]
mov eax, dword [eax + edx*4]
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x34]
mov eax, dword [eax]
mov dword [ebp - 0x60], eax
mov eax, dword [ebp - 0x60]
cmp eax, dword [0x5d80e4]
jne 0x5ed403
xor eax, eax
push ebp
push 0x5ed273
push dword fs:[eax]
mov dword fs:[eax], esp
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x44]
push eax
mov eax, dword [ebp - 4]
mov ecx, dword [eax + 0x3c]
mov ebx, dword [ebp - 0x34]
mov edx, dword [ebp - 0x34]
mov eax, dword [ebp - 4]
call dword [ebx + 0x14]
test al, al
jne 0x5ed266
mov eax, dword [ebp - 4]
cmp byte [eax + 0x7c], 0
jne 0x5ed259
mov dl, 0x11
mov eax, dword [ebp - 4]
call fcn.005e030c
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x5ed7fb
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
jmp 0x5ed7ee
mov eax, dword [ebp - 4]
mov edx, dword [eax + 0x18]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x44]
call fcn.005f75dc
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x50]
mov edx, dword [ebp - 0x28]
mov dword [edx + 4], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov edx, dword [ebp - 0x28]
mov dword [edx + 8], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x60]
mov edx, dword [ebp - 0x28]
mov dword [edx + 0xc], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x44]
mov eax, dword [eax + 0xc]
dec eax
mov edx, dword [ebp - 4]
mov dword [edx + 0x60], eax
mov eax, dword [ebp - 4]
mov edx, dword [ebp - 0x34]
mov dword [eax + 0x50], edx
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x50]
mov eax, dword [eax + 8]
mov edx, dword [ebp - 4]
mov dword [edx + 0x54], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x50]
mov eax, dword [eax + 0xc]
mov edx, dword [ebp - 4]
mov dword [edx + 0x58], eax
mov eax, dword [ebp - 4]
xor edx, edx
mov dword [eax + 0x5c], edx
jmp 0x5ed7ee
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov edx, dword [ebp - 4]
cmp eax, dword [edx + 0x58]
jb 0x5ed49c
mov dl, 0xa
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x5c]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x54]
movzx eax, byte [edx + eax]
mov dword [ebp - 8], eax
mov eax, dword [ebp - 4]
inc dword [eax + 0x5c]
lea edx, [ebp - 0x23]
mov cl, 1
mov eax, dword [ebp - 4]
call fcn.005e9b4c
test al, al
je 0x5ed7fb
cmp byte [ebp - 0x1b], 0
je 0x5ed586
mov eax, dword [ebp - 0x1f]
movzx eax, byte [eax + 0xc]
add al, 0xf8
cmp al, 0x1f
ja 0x5ed4eb
and eax, 0x7f
bt dword [0x5ed894], eax
jae 0x5ed4f8
mov edx, dword [ebp - 0x1f]
mov eax, dword [ebp - 0x23]
call fcn.005de0f4
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 0xc]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x40]
mov edx, dword [edx + 4]
mov eax, dword [edx + eax*4 - 4]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x40]
sub eax, dword [edx + 0x14]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
dec dword [eax + 0xc]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
inc dword [eax + 0x10]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
cmp dword [eax + 0x10], 0x200
jbe 0x5ed546
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005d7900
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov edx, dword [ebp - 0x2c]
mov dword [eax + 0x1c], edx
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 0x18]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x40]
sub eax, dword [edx + 0x1c]
shr eax, 0xc
cmp eax, 2
jle 0x5ed577
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005f724c
mov dl, 6
mov eax, dword [ebp - 4]
call fcn.005e030c
jmp 0x5ed7fb
lea edx, [ebp - 0x1a]
mov cl, 1
mov eax, dword [ebp - 4]
call fcn.005e9b4c
test al, al
je 0x5ed7fb
lea edx, [ebp - 0x11]
mov cl, 1
mov eax, dword [ebp - 4]
call fcn.005e9b4c
test al, al
jne 0x5ed666
cmp byte [ebp - 0x12], 0
je 0x5ed7fb
mov eax, dword [ebp - 0x16]
movzx eax, byte [eax + 0xc]
add al, 0xf8
cmp al, 0x1f
ja 0x5ed5d1
and eax, 0x7f
bt dword [0x5ed894], eax
jae 0x5ed5de
mov edx, dword [ebp - 0x16]
mov eax, dword [ebp - 0x1a]
call fcn.005de0f4
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 0xc]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x40]
mov edx, dword [edx + 4]
mov eax, dword [edx + eax*4 - 4]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x40]
sub eax, dword [edx + 0x14]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
dec dword [eax + 0xc]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
inc dword [eax + 0x10]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
cmp dword [eax + 0x10], 0x200
jbe 0x5ed62c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005d7900
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov edx, dword [ebp - 0x2c]
mov dword [eax + 0x1c], edx
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 0x18]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x40]
sub eax, dword [edx + 0x1c]
shr eax, 0xc
cmp eax, 2
jle 0x5ed7fb
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005f724c
jmp 0x5ed7fb
mov eax, dword [ebp - 0x23]
push eax
mov eax, dword [ebp - 0x16]
push eax
mov eax, dword [ebp - 0xd]
push eax
mov eax, dword [ebp - 0x1f]
push eax
mov eax, dword [ebp - 8]
push eax
mov ecx, dword [ebp - 0x11]
mov edx, dword [ebp - 0x1a]
mov eax, dword [ebp - 4]
call fcn.005e33c4
cmp byte [ebp - 9], 0
je 0x5ed735
mov eax, dword [ebp - 0xd]
movzx eax, byte [eax + 0xc]
add al, 0xf8
cmp al, 0x1f
ja 0x5ed6a9
and eax, 0x7f
bt dword [0x5ed894], eax
jae 0x5ed6b6
mov edx, dword [ebp - 0xd]
mov eax, dword [ebp - 0x11]
call fcn.005de0f4
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 0xc]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x40]
mov edx, dword [edx + 4]
mov eax, dword [edx + eax*4 - 4]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x40]
sub eax, dword [edx + 0x14]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
dec dword [eax + 0xc]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
inc dword [eax + 0x10]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
cmp dword [eax + 0x10], 0x200
jbe 0x5ed704
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005d7900
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov edx, dword [ebp - 0x2c]
mov dword [eax + 0x1c], edx
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 0x18]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x40]
sub eax, dword [edx + 0x1c]
shr eax, 0xc
cmp eax, 2
jle 0x5ed735
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005f724c
cmp byte [ebp - 0x12], 0
je 0x5ed7ee
mov eax, dword [ebp - 0x16]
movzx eax, byte [eax + 0xc]
add al, 0xf8
cmp al, 0x1f
ja 0x5ed756
and eax, 0x7f
bt dword [0x5ed894], eax
jae 0x5ed763
mov edx, dword [ebp - 0x16]
mov eax, dword [ebp - 0x1a]
call fcn.005de0f4
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 0xc]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x40]
mov edx, dword [edx + 4]
mov eax, dword [edx + eax*4 - 4]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x40]
sub eax, dword [edx + 0x14]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
dec dword [eax + 0xc]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
inc dword [eax + 0x10]
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
cmp dword [eax + 0x10], 0x200
jbe 0x5ed7b1
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005d7900
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov edx, dword [ebp - 0x2c]
mov dword [eax + 0x1c], edx
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
mov eax, dword [eax + 0x18]
mov edx, dword [ebp - 4]
mov edx, dword [edx + 0x40]
sub eax, dword [edx + 0x1c]
shr eax, 0xc
cmp eax, 2
jle 0x5ed7ee
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x40]
call fcn.005f724c
jmp 0x5ed7ee
mov dl, 5
mov eax, dword [ebp - 4]
call fcn.005e030c
mov eax, dword [ebp - 4]
cmp byte [eax + 0x4c], 2
je 0x5eb42c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x28]
cmp dword [eax + 0xc], 0
je 0x5ed814
mov eax, dword [ebp - 4]
cmp byte [eax + 0x4c], 2
je 0x5eb420
mov eax, dword [ebp - 4]
cmp byte [eax + 0x4c], 1
jne 0x5ed859
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x44]
mov esi, dword [eax + 0xc]
dec esi
cmp esi, 0
jl 0x5ed83d
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x44]
call fcn.005f7530
dec esi
cmp esi, 0xffffffff
jne 0x5ed82c
mov eax, dword [ebp - 4]
mov eax, dword [eax + 0x44]
call fcn.005f7278
mov eax, dword [ebp - 4]
cmp byte [eax + 0x11], 0
je 0x5ed859
mov eax, dword [ebp - 4]
mov edx, dword [eax]
call dword [edx + 0x14]
mov eax, dword [ebp - 4]
cmp byte [eax + 0x7c], 0
sete bl
xor eax, eax
pop edx
pop ecx
pop ecx
mov dword fs:[eax], edx
push 0x5ed888
lea eax, [ebp - 0x88]
mov edx, 0xa
call fcn.0040a258
ret