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

Disassembly:
sub esp, 0x7c
mov eax, dword [0x641030]
xor eax, esp
mov dword [esp + 0x78], eax
push ebp
mov ebp, dword [esp + 0x84]
mov dword [esp + 0x64], ecx
mov ecx, dword [ebp + 4]
xor eax, eax
cmp ecx, 0xa
jne 0x532758
mov dword [ebp + 0xfa14], eax
mov dword [ebp + 0xfa18], eax
mov dword [ebp + 0xfa1c], eax
mov dword [ebp + 0xfa20], eax
mov dword [ebp + 0xfa24], eax
mov dword [ebp + 0xfa28], eax
mov dword [ebp + 0xfa2c], eax
mov dword [ebp + 0xfa30], eax
mov dword [ebp + 0xfa34], eax
mov dword [ebp + 0xfa38], eax
mov dword [ebp + 0xfa3c], eax
mov dword [ebp + 0xfa40], eax
mov dword [ebp + 0xfa44], eax
mov dword [ebp + 0xfa48], eax
mov dword [ebp + 0xfa4c], eax
mov dword [ebp + 0xfa50], eax
mov dword [ebp + 0xfa54], eax
mov dword [ebp + 0xfa58], eax
mov dword [ebp + 0xfa5c], eax
mov dword [ebp + 0xfa60], eax
mov dword [ebp + 0xfa64], eax
mov dword [ebp + 0xfa68], eax
mov dword [ebp + 0xfa6c], eax
mov dword [ebp + 0xfa70], eax
mov edx, dword [ebp + 0xfa14]
mov dword [esp + 4], edx
mov edx, dword [ebp + 0xfa18]
mov dword [esp + 0x14], edx
mov edx, dword [ebp + 0xfa1c]
mov dword [esp + 0x20], edx
mov edx, dword [ebp + 0xfa20]
mov dword [esp + 0x48], edx
mov edx, dword [ebp + 0xfa24]
mov dword [esp + 0x50], edx
mov edx, dword [ebp + 0xfa28]
mov dword [esp + 0x38], edx
mov edx, dword [ebp + 0xfa2c]
mov dword [esp + 0x4c], edx
mov edx, dword [ebp + 0xfa30]
mov dword [esp + 0x58], edx
mov edx, dword [ebp + 0xfa34]
mov dword [esp + 0x34], edx
mov edx, dword [ebp + 0xfa38]
mov dword [esp + 0x40], edx
mov edx, dword [ebp + 0xfa3c]
mov dword [esp + 0x28], edx
mov edx, dword [ebp + 0xfa40]
mov dword [esp + 0x10], edx
mov edx, dword [ebp + 0xfa44]
mov dword [esp + 0x18], edx
mov edx, dword [ebp + 0xfa48]
mov dword [esp + 0x54], edx
mov edx, dword [ebp + 0xfa4c]
mov dword [esp + 0x24], edx
mov edx, dword [ebp + 0xfa50]
mov dword [esp + 0x6c], edx
mov edx, dword [ebp + 0xfa54]
mov dword [esp + 0xc], edx
mov edx, dword [ebp + 0xfa58]
mov dword [esp + 0x1c], edx
mov edx, dword [ebp + 0xfa5c]
mov dword [esp + 0x60], edx
mov edx, dword [ebp + 0xfa60]
mov dword [esp + 0x5c], edx
mov edx, dword [ebp + 0xfa64]
mov dword [esp + 0x44], edx
mov edx, dword [ebp + 0xfa68]
mov dword [esp + 0x3c], edx
mov edx, dword [ebp + 0xfa6c]
mov dword [esp + 0x30], edx
mov edx, dword [ebp + 0xfa70]
add ecx, 0xfffffff6
mov dword [esp + 0x2c], edx
cmp ecx, 0x28
ja case.default.0x532862
push ebx
push esi
mov esi, 1
push edi
lea ebx, [esi + 0x1c]
lea edi, [esi + 0x1b]
jmp dword [ecx*4 + 0x534a1c]
cmp dword [ebp + 0x20], 8
mov dword [ebp + 4], 0xa
jge 0x5328c4
jmp 0x532880
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
mov ecx, 8
add dword [ebp + 0x20], ecx
add dword [eax], esi
mov eax, dword [ebp]
dec dword [eax + 4]
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x5328bf
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x532880
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
cmp al, 0x42
je case.0x532862.11
mov eax, 0xffffffce
jmp 0x534312
cmp dword [ebp + 0x20], 8
mov dword [ebp + 4], 0xb
jge 0x532944
jmp 0x532900
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
mov ecx, 8
add dword [ebp + 0x20], ecx
add dword [eax], esi
mov eax, dword [ebp]
dec dword [eax + 4]
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x53293f
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x532900
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
cmp al, 0x5a
je case.0x532862.12
mov eax, 0xffffffcd
jmp 0x534312
cmp dword [ebp + 0x20], 8
mov dword [ebp + 4], 0xc
jge 0x5329c4
jmp 0x532980
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
mov ecx, 8
add dword [ebp + 0x20], ecx
add dword [eax], esi
mov eax, dword [ebp]
dec dword [eax + 4]
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x5329bf
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x532980
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
cmp al, 0x68
je case.0x532862.13
mov eax, 0xffffffcc
jmp 0x534312
cmp dword [ebp + 0x20], 8
mov dword [ebp + 4], 0xd
jge 0x532a44
jmp 0x532a00
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
mov ecx, 8
add dword [ebp + 0x20], ecx
add dword [eax], esi
mov eax, dword [ebp]
dec dword [eax + 4]
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x532a3f
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x532a00
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
cmp eax, 0x31
mov dword [ebp + 0x24], eax
jl 0x532ad4
cmp eax, 0x39
jg 0x532ad4
add eax, 0xffffffd0
mov dword [ebp + 0x24], eax
imul eax, eax, 0x186a0
cmp byte [ebp + 0x28], 0
push eax
je 0x532ab8
call fcn.00414420
mov dword [ebp + 0xc50], eax
mov eax, dword [ebp + 0x24]
imul eax, eax, 0x186a0
add eax, esi
sar eax, 1
push eax
call fcn.004144e0
add esp, 8
cmp dword [ebp + 0xc50], 0
mov dword [ebp + 0xc54], eax
je 0x532aae
test eax, eax
jne case.0x532862.14
mov eax, 0xfffffffd
jmp 0x534312
call fcn.00414380
add esp, 4
mov dword [ebp + 0xc4c], eax
test eax, eax
jne case.0x532862.14
mov eax, 0xfffffffd
jmp 0x534312
mov eax, 0xffffffcb
jmp 0x534312
cmp dword [ebp + 0x20], 8
mov dword [ebp + 4], 0xe
jge 0x532b34
jmp 0x532af0
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
mov ecx, 8
add dword [ebp + 0x20], ecx
add dword [eax], esi
mov eax, dword [ebp]
dec dword [eax + 4]
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x532b2f
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x532af0
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
cmp al, 0x17
je case.0x532862.42
cmp al, 0x31
je case.0x532862.15
mov eax, 0xfffffff1
jmp 0x534312
cmp dword [ebp + 0x20], 8
mov dword [ebp + 4], 0xf
jge 0x532bb4
lea ecx, [ecx]
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
mov ecx, 8
add dword [ebp + 0x20], ecx
add dword [eax], esi
mov eax, dword [ebp]
dec dword [eax + 4]
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x532baf
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x532b70
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
cmp al, 0x41
je case.0x532862.16
mov eax, 0xfffffff0
jmp 0x534312
cmp dword [ebp + 0x20], 8
mov dword [ebp + 4], 0x10
jge 0x532c34
jmp 0x532bf0
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
mov ecx, 8
add dword [ebp + 0x20], ecx
add dword [eax], esi
mov eax, dword [ebp]
dec dword [eax + 4]
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x532c2f
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x532bf0
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
cmp al, 0x59
je case.0x532862.17
mov eax, 0xffffffef
jmp 0x534312
cmp dword [ebp + 0x20], 8
mov dword [ebp + 4], 0x11
jge 0x532cb4
jmp 0x532c70
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
mov ecx, 8
add dword [ebp + 0x20], ecx
add dword [eax], esi
mov eax, dword [ebp]
dec dword [eax + 4]
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x532caf
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x532c70
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
cmp al, 0x26
je case.0x532862.18
mov eax, 0xffffffee
jmp 0x534312
cmp dword [ebp + 0x20], 8
mov dword [ebp + 4], 0x12
jge 0x532d34
jmp 0x532cf0
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
mov ecx, 8
add dword [ebp + 0x20], ecx
add dword [eax], esi
mov eax, dword [ebp]
dec dword [eax + 4]
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x532d2f
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x532cf0
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
cmp al, 0x53
je case.0x532862.19
mov eax, 0xffffffec
jmp 0x534312
cmp dword [ebp + 0x20], 8
mov dword [ebp + 4], 0x13
jge 0x532db4
jmp 0x532d70
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
mov ecx, 8
add dword [ebp + 0x20], ecx
add dword [eax], esi
mov eax, dword [ebp]
dec dword [eax + 4]
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x532daf
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x532d70
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
cmp al, 0x59
je 0x532dd8
mov eax, 0xffffffeb
jmp 0x534312
add dword [ebp + 0x2c], esi
mov dword [ebp + 0xc58], 0
cmp dword [ebp + 0x20], 8
mov dword [ebp + 4], 0x14
jge 0x532e36
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
mov ecx, 8
add dword [ebp + 0x20], ecx
add dword [eax], esi
mov eax, dword [ebp]
dec dword [eax + 4]
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x532e31
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x532df2
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
mov ecx, dword [ebp + 0xc58]
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
movzx edx, al
shl ecx, 8
or ecx, edx
mov dword [ebp + 0xc58], ecx
cmp dword [ebp + 0x20], 8
mov dword [ebp + 4], 0x15
jge 0x532eb4
lea ecx, [ecx]
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
mov ecx, 8
add dword [ebp + 0x20], ecx
add dword [eax], esi
mov eax, dword [ebp]
dec dword [eax + 4]
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x532eaf
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x532e70
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
mov ecx, dword [ebp + 0xc58]
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
movzx edx, al
shl ecx, 8
or ecx, edx
mov dword [ebp + 0xc58], ecx
cmp dword [ebp + 0x20], 8
mov dword [ebp + 4], 0x16
jge 0x532f34
jmp 0x532ef0
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
mov ecx, 8
add dword [ebp + 0x20], ecx
add dword [eax], esi
mov eax, dword [ebp]
dec dword [eax + 4]
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x532f2f
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x532ef0
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
mov ecx, dword [ebp + 0xc58]
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
movzx edx, al
shl ecx, 8
or ecx, edx
mov dword [ebp + 0xc58], ecx
cmp dword [ebp + 0x20], 8
mov dword [ebp + 4], 0x17
jge 0x532fb4
jmp 0x532f70
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
mov ecx, 8
add dword [ebp + 0x20], ecx
add dword [eax], esi
mov eax, dword [ebp]
dec dword [eax + 4]
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x532faf
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x532f70
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
mov ecx, dword [ebp + 0xc58]
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
movzx edx, al
shl ecx, 8
or ecx, edx
mov dword [ebp + 0xc58], ecx
cmp dword [ebp + 0x20], esi
mov dword [ebp + 4], 0x18
jge 0x533030
lea ebx, [ebx]
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
add dword [ebp + 0x20], 8
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
add dword [eax], esi
mov eax, dword [ebp]
dec dword [eax + 4]
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x53302b
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], esi
jl 0x532ff0
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 1]
shr eax, cl
mov dword [ebp + 0x34], 0
and eax, esi
dec edx
mov dword [ebp + 0x20], edx
mov byte [ebp + 0x10], al
cmp dword [ebp + 0x20], 8
mov dword [ebp + 4], 0x19
jge 0x5330a4
jmp 0x533060
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
mov ecx, 8
add dword [ebp + 0x20], ecx
add dword [eax], esi
mov eax, dword [ebp]
dec dword [eax + 4]
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x53309f
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x533060
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
mov ecx, dword [ebp + 0x34]
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
movzx edx, al
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x34], ecx
cmp dword [ebp + 0x20], 8
mov dword [ebp + 4], 0x1a
jge 0x533124
jmp 0x5330e0
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
mov ecx, 8
add dword [ebp + 0x20], ecx
add dword [eax], esi
mov eax, dword [ebp]
dec dword [eax + 4]
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x53311f
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x5330e0
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
mov ecx, dword [ebp + 0x34]
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
movzx edx, al
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x34], ecx
cmp dword [ebp + 0x20], 8
mov dword [ebp + 4], 0x1b
jge 0x5331a4
jmp 0x533160
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
mov ecx, 8
add dword [ebp + 0x20], ecx
add dword [eax], esi
mov eax, dword [ebp]
dec dword [eax + 4]
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x53319f
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x533160
mov eax, dword [ebp + 0x20]
mov edx, dword [ebp + 0x1c]
lea ecx, [eax - 8]
shr edx, cl
add eax, 0xfffffff8
mov dword [ebp + 0x20], eax
mov eax, dword [ebp + 0x34]
and edx, 0xff
movzx ecx, dl
shl eax, 8
or eax, ecx
mov dword [ebp + 0x34], eax
jge 0x5331d5
mov eax, 0xffffffea
jmp 0x534312
mov edx, dword [ebp + 0x24]
imul edx, edx, 0x186a0
add edx, 0xa
cmp eax, edx
jle 0x5331ef
mov eax, 0xffffffe9
jmp 0x534312
mov dword [esp + 0x10], 0
jmp 0x533268
cmp dword [ebp + 0x20], esi
mov dword [ebp + 4], edi
jge 0x533241
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov edx, dword [eax]
movzx edx, byte [edx]
mov ecx, dword [ebp + 0x1c]
add dword [ebp + 0x20], 8
shl ecx, 8
or ecx, edx
mov dword [ebp + 0x1c], ecx
add dword [eax], esi
mov eax, dword [ebp]
dec dword [eax + 4]
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x53323c
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], esi
jl 0x533201
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 1]
shr eax, cl
dec edx
mov dword [ebp + 0x20], edx
and eax, esi
cmp al, 1
mov eax, dword [esp + 0x10]
sete cl
mov byte [eax + ebp + 0xd6c], cl
add eax, esi
mov dword [esp + 0x10], eax
cmp dword [esp + 0x10], 0x10
jl case.0x532862.28
push 0x100
lea eax, [ebp + 0xc6c]
push 0
push eax
call fcn.00554cc0
add esp, 0xc
mov dword [esp + 0x10], 0
jmp 0x53331d
cmp dword [ebp + 0x20], esi
mov dword [ebp + 4], ebx
jge 0x5332e0
or ecx, 0xffffffff
lea ecx, [ecx]
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov edi, dword [eax]
movzx edi, byte [edi]
mov edx, dword [ebp + 0x1c]
add dword [ebp + 0x20], 8
shl edx, 8
or edx, edi
mov dword [ebp + 0x1c], edx
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], ecx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x5332db
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], esi
jl 0x5332a0
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 1]
shr eax, cl
dec edx
mov dword [ebp + 0x20], edx
and eax, esi
cmp al, 1
jne 0x53330a
mov eax, dword [esp + 0x10]
mov ecx, dword [esp + 0x20]
shl eax, 4
add eax, ebp
mov byte [eax + ecx + 0xc6c], 1
add dword [esp + 0x20], esi
cmp dword [esp + 0x20], 0x10
jl case.0x532862.29
add dword [esp + 0x10], esi
mov eax, dword [esp + 0x10]
cmp eax, 0x10
jge 0x53333a
cmp byte [eax + ebp + 0xd6c], 0
je 0x533319
mov dword [esp + 0x20], 0
jmp 0x53330e
mov eax, ebp
call fcn.00532660
mov eax, dword [ebp + 0xc68]
test eax, eax
jne 0x533355
mov eax, 0xffffffe8
jmp 0x534312
add eax, 2
mov dword [esp + 0x54], eax
mov ecx, 3
cmp dword [ebp + 0x20], ecx
mov dword [ebp + 4], 0x1e
jge 0x5333b0
or edx, 0xffffffff
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], 8
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], edx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x5333ab
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x533370
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 3]
shr eax, cl
add edx, 0xfffffffd
mov dword [ebp + 0x20], edx
and eax, 7
cmp eax, 2
mov dword [esp + 0x5c], eax
jl 0x5333d2
cmp eax, 6
jle case.0x532862.31
mov eax, 0xffffffe7
jmp 0x534312
cmp dword [ebp + 0x20], 0xf
mov dword [ebp + 4], 0x1f
jge 0x533431
mov edx, 8
or ecx, 0xffffffff
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], edx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], ecx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x53342b
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], 0xf
jl 0x5333f1
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 0xf]
shr eax, cl
add edx, 0xfffffff1
mov dword [ebp + 0x20], edx
and eax, 0x7fff
cmp eax, esi
mov ebx, eax
mov dword [esp + 0x44], ebx
jge 0x53345b
mov eax, 0xffffffe6
jmp 0x534312
mov dword [esp + 0x10], 0
jmp 0x5334ed
cmp dword [ebp + 0x20], esi
mov dword [ebp + 4], 0x20
jge 0x5334bf
mov edx, 8
or ecx, 0xffffffff
lea esp, [esp]
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], edx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], ecx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x5334ba
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], esi
jl 0x533480
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 1]
shr eax, cl
dec edx
mov dword [ebp + 0x20], edx
and eax, esi
test al, al
jne 0x533500
mov eax, dword [esp + 0x10]
mov dl, byte [esp + 0x20]
mov ebx, dword [esp + 0x44]
mov byte [eax + ebp + 0x650e], dl
add eax, esi
mov dword [esp + 0x10], eax
cmp dword [esp + 0x10], ebx
jge 0x53351e
mov dword [esp + 0x20], 0
jmp case.0x532862.32
mov eax, dword [esp + 0x20]
add eax, esi
cmp eax, dword [esp + 0x5c]
mov dword [esp + 0x20], eax
jl case.0x532862.32
mov eax, 0xffffffe5
jmp 0x534312
mov edx, dword [esp + 0x5c]
xor al, al
test edx, edx
jle 0x533540
xor ecx, ecx
lea ebx, [ebx]
mov byte [esp + ecx + 0x80], al
inc al
movzx ecx, al
cmp ecx, edx
jl 0x533530
xor edi, edi
mov dword [esp + 0x10], edi
test ebx, ebx
jle 0x533597
lea ebx, [ebx]
mov al, byte [edi + ebp + 0x650e]
movzx ecx, al
mov dl, byte [esp + ecx + 0x80]
lea ecx, [esp + ecx + 0x80]
test al, al
jbe 0x53357d
lea esp, [esp]
mov bl, byte [ecx - 1]
mov byte [ecx], bl
dec al
sub ecx, esi
test al, al
ja 0x533570
mov byte [edi + ebp + 0x1ebc], dl
add edi, esi
cmp edi, dword [esp + 0x44]
mov byte [esp + 0x80], dl
jl 0x533550
mov dword [esp + 0x10], edi
mov dword [esp + 0x2c], 0
jmp 0x5336db
cmp dword [ebp + 0x20], esi
mov dword [ebp + 4], 0x23
jge 0x5335ff
mov edx, 8
or ecx, 0xffffffff
jmp 0x5335c0
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], edx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], ecx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x5335fa
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], esi
jl 0x5335c0
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 1]
shr eax, cl
dec edx
mov dword [ebp + 0x20], edx
and eax, esi
test al, al
jne 0x53361a
add dword [esp + 0x30], esi
jmp 0x53361e
sub dword [esp + 0x30], esi
mov eax, dword [esp + 0x30]
cmp eax, esi
jl 0x533959
cmp eax, 0x14
jg 0x533959
cmp dword [ebp + 0x20], esi
mov dword [ebp + 4], 0x22
jge 0x53368f
mov edx, 8
or ecx, 0xffffffff
jmp 0x533650
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], edx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], ecx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x53368a
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], esi
jl 0x533650
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 1]
shr eax, cl
dec edx
mov dword [ebp + 0x20], edx
and eax, esi
test al, al
jne case.0x532862.35
mov ecx, dword [esp + 0x2c]
mov eax, dword [esp + 0x10]
imul ecx, ecx, 0x102
mov dl, byte [esp + 0x30]
add ecx, ebp
mov byte [ecx + eax + 0xab60], dl
add eax, esi
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x10]
cmp eax, dword [esp + 0x54]
jl 0x53361e
add dword [esp + 0x2c], esi
mov eax, dword [esp + 0x5c]
cmp dword [esp + 0x2c], eax
jge 0x533765
cmp dword [ebp + 0x20], 5
mov dword [ebp + 4], 0x21
jge 0x533740
mov edx, 8
or ecx, 0xffffffff
mov edi, edi
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], edx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], ecx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x53373a
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], 5
jl 0x533700
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 5]
shr eax, cl
mov dword [esp + 0x10], 0
and eax, 0x1f
add edx, 0xfffffffb
mov dword [ebp + 0x20], edx
mov dword [esp + 0x30], eax
jmp 0x5336c9
mov dword [esp + 0x2c], 0
test eax, eax
jle 0x533800
mov eax, dword [esp + 0x5c]
lea ecx, [ebp + 0xf9fc]
mov dword [esp + 0x58], ecx
lea esi, [ebp + 0xc99c]
lea ebx, [ebp + 0xab60]
mov dword [esp + 0x34], eax
mov dword [esp + 0x2c], eax
xor edx, edx
xor ecx, ecx
cmp dword [esp + 0x54], edx
mov edi, 0x20
jle 0x5337bd
movzx eax, byte [ebx + edx]
cmp eax, ecx
jle 0x5337b0
mov ecx, eax
cmp eax, edi
jge 0x5337b6
mov edi, eax
inc edx
cmp edx, dword [esp + 0x54]
jl 0x5337a6
mov edx, dword [esp + 0x54]
push edx
push ecx
push edi
push ebx
lea eax, [esi + 0x1830]
push eax
push esi
lea ecx, [esi - 0x1830]
push ecx
mov ecx, dword [esp + 0x8c]
call fcn.00550b10
mov eax, dword [esp + 0x58]
mov dword [eax], edi
add eax, 4
add ebx, 0x102
add esi, 0x408
sub dword [esp + 0x34], 1
mov dword [esp + 0x58], eax
jne 0x533797
mov eax, dword [ebp + 0xc68]
inc eax
mov dword [esp + 0x58], eax
mov eax, dword [ebp + 0x24]
imul eax, eax, 0x186a0
mov dword [esp + 0x34], eax
xor esi, esi
xor eax, eax
lea edi, [ebp + 0x40]
mov ecx, 0x100
rep stosd dword es:[edi], eax
mov dword [esp + 0x40], esi
mov dword [esp + 0x10], 0x100
mov eax, 0xfff
mov edx, 0xf
lea edi, [ebp + 0x1eb8]
mov bl, dl
shl bl, 4
mov ecx, 0xf
mov byte [esp + 0x17], bl
jmp 0x533856
mov bl, byte [esp + 0x17]
add bl, cl
mov byte [eax + ebp + 0xe7c], bl
dec eax
sub ecx, 1
jns 0x533852
lea ecx, [eax + 1]
mov dword [edi], ecx
dec edx
sub edi, 4
cmp edx, esi
jge 0x533842
cmp dword [esp + 0x44], esi
mov dword [esp + 0x1c], esi
mov dword [esp + 0x64], esi
jle 0x534556
movzx eax, byte [ebp + 0x1ebc]
mov ecx, dword [ebp + eax*4 + 0xf9fc]
mov dword [esp + 0x68], eax
imul eax, eax, 0x408
add eax, ebp
lea edx, [eax + 0xb16c]
mov dword [esp + 0x48], edx
lea edx, [eax + 0xe1cc]
add eax, 0xc99c
mov dword [esp + 0x50], ecx
mov dword [esp + 0x38], edx
mov dword [esp + 0x3c], eax
mov dword [esp + 0x40], 0x31
mov dword [esp + 0x18], ecx
mov esi, 1
mov eax, dword [ebp + 0x20]
cmp eax, dword [esp + 0x18]
mov dword [ebp + 4], 0x24
jge 0x533933
mov edx, 8
or ecx, 0xffffffff
jmp 0x5338f0
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], edx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], ecx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x53392a
add dword [eax + 0xc], esi
mov eax, dword [esp + 0x18]
cmp dword [ebp + 0x20], eax
jl 0x5338f0
mov edx, dword [ebp + 0x20]
mov edi, dword [esp + 0x18]
mov eax, dword [ebp + 0x1c]
sub edx, edi
mov ecx, edx
shr eax, cl
mov ebx, esi
mov ecx, edi
shl ebx, cl
mov dword [ebp + 0x20], edx
sub ebx, esi
and eax, ebx
mov dword [esp + 0x28], eax
jmp 0x5339e7
mov eax, 0xffffffe4
jmp 0x534312
cmp dword [ebp + 0x20], esi
mov dword [ebp + 4], 0x25
jge 0x5339bf
mov edx, 8
or ecx, 0xffffffff
jmp 0x533980
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], edx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], ecx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x5339ba
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], esi
jl 0x533980
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
mov edi, dword [esp + 0x18]
lea ecx, [edx - 1]
shr eax, cl
mov ecx, dword [esp + 0x28]
dec edx
mov dword [ebp + 0x20], edx
and eax, esi
lea edx, [ecx + ecx]
or edx, eax
mov dword [esp + 0x6c], eax
mov dword [esp + 0x28], edx
mov eax, edx
cmp edi, 0x14
jg 0x534560
mov ecx, dword [esp + 0x48]
cmp eax, dword [ecx + edi*4]
jle 0x533a04
add edi, esi
mov dword [esp + 0x18], edi
jmp case.0x532862.37
mov edx, dword [esp + 0x3c]
sub eax, dword [edx + edi*4]
js 0x533a18
cmp eax, 0x102
jl 0x533ad3
mov eax, 0xfffffff2
jmp 0x534312
cmp dword [ebp + 0x20], esi
mov dword [ebp + 4], 0x29
jge 0x533a7f
mov edx, 8
or ecx, 0xffffffff
jmp 0x533a40
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], edx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], ecx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x533a7a
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], esi
jl 0x533a40
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
mov edi, dword [esp + 0x18]
lea ecx, [edx - 1]
shr eax, cl
mov ecx, dword [esp + 0x28]
dec edx
mov dword [ebp + 0x20], edx
and eax, esi
lea edx, [ecx + ecx]
mov dword [esp + 0x6c], eax
or eax, edx
cmp edi, 0x14
mov dword [esp + 0x28], eax
jg 0x534560
mov ecx, dword [esp + 0x48]
cmp eax, dword [ecx + edi*4]
jg 0x5340d5
mov edx, dword [esp + 0x3c]
sub eax, dword [edx + edi*4]
js 0x533a18
cmp eax, 0x102
jge 0x533a18
mov ecx, dword [esp + 0x38]
mov edx, dword [ecx + eax*4]
mov dword [esp + 0x4c], edx
mov ecx, dword [esp + 0x4c]
cmp ecx, dword [esp + 0x58]
je 0x5340e0
test ecx, ecx
je 0x533af8
cmp ecx, esi
jne 0x533d98
mov dword [esp + 0x24], 0xffffffff
mov dword [esp + 0x60], esi
mov eax, dword [esp + 0x4c]
test eax, eax
jne 0x533b16
mov eax, dword [esp + 0x60]
add dword [esp + 0x24], eax
jmp 0x533b29
cmp eax, esi
jne 0x533b29
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x60]
lea eax, [ecx + edx*2]
mov dword [esp + 0x24], eax
mov ecx, dword [esp + 0x60]
lea edx, [ecx + ecx]
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x60], edx
test ecx, ecx
jne 0x533b91
mov eax, dword [esp + 0x64]
add eax, esi
cmp eax, dword [esp + 0x44]
mov dword [esp + 0x64], eax
jge 0x534556
movzx eax, byte [eax + ebp + 0x1ebc]
mov edx, dword [ebp + eax*4 + 0xf9fc]
mov dword [esp + 0x68], eax
imul eax, eax, 0x408
add eax, ebp
mov dword [esp + 0x50], edx
lea edx, [eax + 0xb16c]
mov dword [esp + 0x48], edx
lea edx, [eax + 0xe1cc]
add eax, 0xc99c
mov ecx, 0x32
mov dword [esp + 0x38], edx
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x50]
sub ecx, esi
mov dword [esp + 0x40], ecx
mov dword [esp + 0x18], eax
mov ecx, dword [ebp + 0x20]
cmp ecx, dword [esp + 0x18]
mov dword [ebp + 4], 0x26
jge 0x533c03
mov edx, 8
or ecx, 0xffffffff
jmp 0x533bc0
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], edx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], ecx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x533bfa
add dword [eax + 0xc], esi
mov eax, dword [esp + 0x18]
cmp dword [ebp + 0x20], eax
jl 0x533bc0
mov edx, dword [ebp + 0x20]
mov edi, dword [esp + 0x18]
mov eax, dword [ebp + 0x1c]
sub edx, edi
mov ecx, edx
shr eax, cl
mov ebx, esi
mov ecx, edi
shl ebx, cl
mov dword [ebp + 0x20], edx
sub ebx, esi
and eax, ebx
cmp edi, 0x14
mov dword [esp + 0x28], eax
jg 0x534560
mov ecx, dword [esp + 0x48]
cmp eax, dword [ecx + edi*4]
jle 0x533cc6
add edi, esi
mov dword [esp + 0x18], edi
cmp dword [ebp + 0x20], esi
mov dword [ebp + 4], 0x27
jge 0x533c9f
mov edx, 8
or ecx, 0xffffffff
jmp 0x533c60
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], edx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], ecx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x533c9a
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], esi
jl 0x533c60
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
mov edi, dword [esp + 0x18]
lea ecx, [edx - 1]
shr eax, cl
dec edx
mov dword [ebp + 0x20], edx
mov edx, dword [esp + 0x28]
and eax, esi
lea ecx, [edx + edx]
mov dword [esp + 0x6c], eax
or eax, ecx
jmp 0x533c20
mov edx, dword [esp + 0x3c]
sub eax, dword [edx + edi*4]
js 0x533a18
cmp eax, 0x102
jge 0x533a18
mov ecx, dword [esp + 0x38]
mov eax, dword [ecx + eax*4]
mov dword [esp + 0x4c], eax
test eax, eax
je 0x533b04
cmp eax, esi
je 0x533b04
mov eax, dword [ebp + 0x1e7c]
movzx ecx, byte [eax + ebp + 0xe7c]
mov cl, byte [ecx + ebp + 0xd7c]
mov edx, dword [esp + 0x24]
add edx, esi
movzx eax, cl
add dword [ebp + eax*4 + 0x40], edx
cmp byte [ebp + 0x28], 0
mov dword [esp + 0x24], edx
je 0x533d5e
test edx, edx
jle 0x533ade
mov eax, dword [esp + 0x1c]
cmp eax, dword [esp + 0x34]
jge 0x53456a
mov ebx, dword [ebp + 0xc50]
movzx di, cl
sub edx, esi
mov word [ebx + eax*2], di
add eax, esi
mov dword [esp + 0x1c], eax
mov dword [esp + 0x24], edx
test edx, edx
jg 0x533d31
jmp 0x533ade
test edx, edx
jle 0x533ade
mov ecx, dword [esp + 0x1c]
mov edi, dword [esp + 0x34]
mov edx, dword [esp + 0x24]
cmp ecx, edi
jge 0x534574
mov ebx, dword [ebp + 0xc4c]
sub edx, esi
mov dword [ebx + ecx*4], eax
add ecx, esi
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x24], edx
test edx, edx
jg 0x533d72
jmp 0x533ade
mov edx, dword [esp + 0x34]
cmp dword [esp + 0x1c], edx
jge 0x53454c
dec ecx
cmp ecx, 0x10
jae 0x533e7e
mov esi, dword [ebp + 0x1e7c]
lea edx, [esi + ebp]
mov bl, byte [ecx + edx + 0xe7c]
mov dword [esp + 0x80], edx
mov byte [esp + 0x17], bl
cmp ecx, 3
jbe 0x533e5c
lea eax, [esi + ecx]
lea edx, [ebp + 0xe7b]
mov esi, ebp
sub esi, edx
add esi, 0xe7c
mov dword [esp + 0x70], esi
mov esi, ebp
sub esi, edx
lea edi, [esi + 0xe7a]
mov esi, ebp
sub esi, edx
add esi, 0xe78
mov dword [esp + 0x7c], esi
mov esi, ebp
sub esi, edx
add esi, 0xe79
mov dword [esp + 0x74], esi
lea esi, [ecx - 4]
shr esi, 2
add eax, edx
inc esi
lea ebx, [ebx]
movzx edx, byte [eax]
mov ebx, dword [esp + 0x70]
mov byte [ebx + eax], dl
movzx edx, byte [edi + eax]
mov byte [eax], dl
mov edx, dword [esp + 0x74]
movzx ebx, byte [edx + eax]
mov byte [edi + eax], bl
mov ebx, dword [esp + 0x7c]
movzx ebx, byte [ebx + eax]
mov byte [edx + eax], bl
sub ecx, 4
sub eax, 4
sub esi, 1
jne 0x533e20
mov edx, dword [esp + 0x80]
mov bl, byte [esp + 0x17]
test ecx, ecx
jbe 0x533e73
sub ecx, 1
mov al, byte [ecx + edx + 0xe7c]
mov byte [ecx + edx + 0xe7d], al
jne 0x533e60
mov byte [edx + 0xe7c], bl
jmp 0x533f9b
mov edx, ecx
shr edx, 4
mov edi, dword [ebp + edx*4 + 0x1e7c]
lea esi, [ebp + edx*4 + 0x1e7c]
and ecx, 0xf
add ecx, edi
cmp ecx, edi
mov bl, byte [ecx + ebp + 0xe7c]
mov byte [esp + 0x17], bl
jle 0x533ec3
jmp 0x533eb0
mov al, byte [ecx + ebp + 0xe7b]
mov byte [ecx + ebp + 0xe7c], al
dec ecx
cmp ecx, dword [esi]
jg 0x533eb0
inc dword [esi]
test edx, edx
jle 0x533eed
mov eax, esi
jmp 0x533ed0
dec dword [eax]
mov ecx, dword [eax - 4]
mov esi, dword [eax]
mov cl, byte [ecx + ebp + 0xe8b]
dec edx
sub eax, 4
mov byte [esi + ebp + 0xe7c], cl
test edx, edx
jg 0x533ed0
dec dword [ebp + 0x1e7c]
mov eax, dword [ebp + 0x1e7c]
mov byte [eax + ebp + 0xe7c], bl
cmp dword [ebp + 0x1e7c], 0
jne 0x533f9b
mov ecx, 0xfff
mov edi, 0xf
lea esi, [ebp + 0x1eb8]
lea ecx, [ecx]
mov eax, 0xf
jmp 0x533f30
mov ebx, dword [esi]
lea edx, [eax + ebp]
movzx edx, byte [edx + ebx + 0xe7c]
mov byte [ecx + ebp + 0xe7c], dl
mov ebx, dword [esi]
lea edx, [eax + ebp]
movzx edx, byte [edx + ebx + 0xe7b]
mov byte [ecx + ebp + 0xe7b], dl
mov ebx, dword [esi]
lea edx, [eax + ebp]
movzx edx, byte [edx + ebx + 0xe7a]
mov byte [ecx + ebp + 0xe7a], dl
mov ebx, dword [esi]
lea edx, [eax + ebp]
movzx edx, byte [edx + ebx + 0xe79]
mov byte [ecx + ebp + 0xe79], dl
sub eax, 4
sub ecx, 4
test eax, eax
jge 0x533f30
lea eax, [ecx + 1]
mov dword [esi], eax
dec edi
sub esi, 4
test edi, edi
jge 0x533f20
mov bl, byte [esp + 0x17]
movzx ecx, bl
movzx edx, byte [ecx + ebp + 0xd7c]
inc dword [ebp + edx*4 + 0x40]
cmp byte [ebp + 0x28], 0
lea eax, [ecx + ebp + 0xd7c]
lea ecx, [ebp + edx*4 + 0x40]
mov edx, dword [esp + 0x1c]
je 0x533fcf
movzx ax, byte [eax]
mov ecx, dword [ebp + 0xc50]
mov word [ecx + edx*2], ax
jmp 0x533fdb
movzx eax, byte [eax]
mov ecx, dword [ebp + 0xc4c]
mov dword [ecx + edx*4], eax
mov ecx, dword [esp + 0x40]
inc dword [esp + 0x1c]
test ecx, ecx
jne 0x53403b
mov eax, dword [esp + 0x64]
inc eax
cmp eax, dword [esp + 0x44]
mov dword [esp + 0x64], eax
jge 0x534556
movzx eax, byte [eax + ebp + 0x1ebc]
mov edx, dword [ebp + eax*4 + 0xf9fc]
mov dword [esp + 0x68], eax
imul eax, eax, 0x408
add eax, ebp
mov dword [esp + 0x50], edx
lea edx, [eax + 0xb16c]
mov dword [esp + 0x48], edx
lea edx, [eax + 0xe1cc]
add eax, 0xc99c
mov ecx, 0x32
mov dword [esp + 0x38], edx
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x50]
dec ecx
mov dword [esp + 0x40], ecx
mov dword [esp + 0x18], eax
mov esi, 1
mov ecx, dword [ebp + 0x20]
cmp ecx, dword [esp + 0x18]
mov dword [ebp + 4], 0x28
jge 0x5340b3
mov edx, 8
or ecx, 0xffffffff
jmp 0x534070
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], edx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], ecx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x5340aa
add dword [eax + 0xc], esi
mov eax, dword [esp + 0x18]
cmp dword [ebp + 0x20], eax
jl 0x534070
mov edx, dword [ebp + 0x20]
mov edi, dword [esp + 0x18]
mov eax, dword [ebp + 0x1c]
sub edx, edi
mov ecx, edx
shr eax, cl
mov ebx, esi
mov ecx, edi
shl ebx, cl
mov dword [ebp + 0x20], edx
sub ebx, esi
and eax, ebx
jmp 0x533aa1
add edi, esi
mov dword [esp + 0x18], edi
jmp case.0x532862.41
mov eax, dword [ebp + 0x34]
test eax, eax
jl 0x534542
cmp eax, dword [esp + 0x1c]
jge 0x534542
xor ebx, ebx
lea eax, [ebp + 0x448]
lea edx, [ebp + 0x444]
lea esi, [ebp + 0x40]
mov ecx, 0x100
mov edi, eax
mov dword [ebp + 0xc], ebx
mov byte [ebp + 8], bl
mov dword [ebp + 0xc60], 0xffffffff
mov dword [ebp + 4], 2
mov dword [edx], ebx
rep movsd dword es:[edi], dword [esi]
mov ecx, 0x100
lea ecx, [ecx]
mov esi, dword [eax - 4]
add dword [eax], esi
add eax, 4
sub ecx, 1
jne 0x534130
cmp byte [ebp + 0x28], cl
je 0x534480
lea edi, [ebp + 0x848]
mov ecx, 0x101
mov esi, edx
rep movsd dword es:[edi], dword [esi]
xor ecx, ecx
cmp dword [esp + 0x1c], ebx
jle 0x5341b6
lea ecx, [ecx]
mov edx, dword [ebp + 0xc50]
movzx eax, byte [edx + ecx*2]
mov si, word [ebp + eax*4 + 0x848]
lea edx, [edx + ecx*2]
lea eax, [ebp + eax*4 + 0x848]
mov word [edx], si
mov esi, dword [ebp + 0xc54]
mov edx, ecx
sar edx, 1
add esi, edx
test cl, 1
jne 0x53419a
mov dl, byte [esi]
and dl, 0xf0
or dl, byte [eax + 2]
jmp 0x5341ab
mov edx, dword [eax]
mov ebx, dword [eax]
sar edx, 0xc
xor dl, byte [esi]
sar ebx, 0xc
and dl, 0xf
xor dl, bl
mov byte [esi], dl
inc dword [eax]
inc ecx
cmp ecx, dword [esp + 0x1c]
jl 0x534160
mov eax, dword [ebp + 0x34]
mov edx, dword [ebp + 0xc54]
mov ecx, eax
sar ecx, 1
movzx ebx, byte [ecx + edx]
movzx ecx, al
and cl, 1
add cl, cl
add cl, cl
shr ebx, cl
mov ecx, dword [ebp + 0xc50]
movzx edx, word [ecx + eax*2]
and ebx, 0xf
shl ebx, 0x10
mov dword [esp + 0x10], eax
or ebx, edx
jmp 0x5341f4
mov ebx, dword [esp + 0x20]
mov eax, dword [ebp + 0xc50]
mov ecx, dword [ebp + 0xc54]
lea esi, [eax + ebx*2]
mov edx, ebx
sar edx, 1
movzx eax, byte [ecx + edx]
movzx ecx, bl
and cl, 1
add cl, cl
add cl, cl
shr eax, cl
movzx ecx, word [esi]
and eax, 0xf
shl eax, 0x10
or eax, ecx
mov cx, word [esp + 0x10]
mov word [esi], cx
mov ecx, dword [ebp + 0xc54]
lea esi, [ecx + edx]
mov ecx, dword [esp + 0x10]
test bl, 1
jne 0x53424a
mov dl, byte [esi]
sar ecx, 0x10
and dl, 0xf0
or cl, dl
mov byte [esi], cl
jmp 0x53425b
mov edx, ecx
sar edx, 0xc
xor dl, byte [esi]
sar ecx, 0xc
and dl, 0xf
xor dl, cl
mov byte [esi], dl
mov dword [esp + 0x10], ebx
mov dword [esp + 0x20], eax
cmp ebx, dword [ebp + 0x34]
jne 0x5341f0
mov edx, dword [ebp + 0x34]
xor ebx, ebx
mov dword [ebp + 0x38], edx
mov dword [ebp + 0x440], ebx
cmp byte [ebp + 0x10], bl
je 0x534417
mov dword [ebp + 0x14], ebx
mov dword [ebp + 0x18], ebx
xor esi, esi
mov ecx, 0x100
lea edi, [ebx + 1]
nop
lea eax, [ecx + esi]
sar eax, 1
cmp edx, dword [ebp + eax*4 + 0x444]
jl 0x5342a2
mov esi, eax
jmp 0x5342a4
mov ecx, eax
mov eax, ecx
sub eax, esi
cmp eax, edi
jne 0x534290
mov eax, dword [ebp + 0xc54]
mov ecx, edx
shr ecx, 1
mov dword [ebp + 0x3c], esi
movzx eax, byte [ecx + eax]
movzx ecx, dl
and cl, 1
add cl, cl
add cl, cl
shr eax, cl
mov ecx, dword [ebp + 0xc50]
movzx edx, word [ecx + edx*2]
and eax, 0xf
shl eax, 0x10
or eax, edx
mov dword [ebp + 0x38], eax
mov dword [ebp + 0x440], edi
mov eax, dword [0x63ed40]
mov ecx, edi
mov dword [ebp + 0x14], eax
mov dword [ebp + 0x18], edi
cmp ecx, 0x200
jne 0x5342fc
mov dword [ebp + 0x18], ebx
dec dword [ebp + 0x14]
mov eax, dword [ebp + 0x14]
xor edx, edx
cmp eax, edi
sete dl
xor edx, esi
mov dword [ebp + 0x3c], edx
xor ebx, ebx
xor eax, eax
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0x14]
mov dword [ebp + 0xfa14], ecx
mov ecx, dword [esp + 0x20]
mov dword [ebp + 0xfa18], edx
mov edx, dword [esp + 0x48]
mov dword [ebp + 0xfa1c], ecx
mov ecx, dword [esp + 0x50]
mov dword [ebp + 0xfa20], edx
mov edx, dword [esp + 0x38]
mov dword [ebp + 0xfa24], ecx
mov ecx, dword [esp + 0x4c]
mov dword [ebp + 0xfa28], edx
mov edx, dword [esp + 0x58]
mov dword [ebp + 0xfa2c], ecx
mov ecx, dword [esp + 0x34]
mov dword [ebp + 0xfa30], edx
mov edx, dword [esp + 0x40]
mov dword [ebp + 0xfa34], ecx
mov ecx, dword [esp + 0x28]
mov dword [ebp + 0xfa38], edx
mov edx, dword [esp + 0x10]
mov dword [ebp + 0xfa3c], ecx
mov ecx, dword [esp + 0x18]
mov dword [ebp + 0xfa40], edx
mov edx, dword [esp + 0x54]
mov dword [ebp + 0xfa44], ecx
mov ecx, dword [esp + 0x24]
mov dword [ebp + 0xfa48], edx
mov edx, dword [esp + 0x6c]
mov dword [ebp + 0xfa4c], ecx
mov ecx, dword [esp + 0xc]
mov dword [ebp + 0xfa50], edx
mov edx, dword [esp + 0x1c]
mov dword [ebp + 0xfa54], ecx
mov ecx, dword [esp + 0x60]
mov dword [ebp + 0xfa58], edx
mov edx, dword [esp + 0x5c]
mov dword [ebp + 0xfa5c], ecx
mov ecx, dword [esp + 0x44]
mov dword [ebp + 0xfa60], edx
mov edx, dword [esp + 0x3c]
mov dword [ebp + 0xfa64], ecx
mov ecx, dword [esp + 0x30]
mov dword [ebp + 0xfa68], edx
mov edx, dword [esp + 0x2c]
mov dword [ebp + 0xfa6c], ecx
mov ecx, dword [esp + 0x7c]
mov dword [ebp + 0xfa70], edx
pop ebp
xor ecx, esp
call fcn.005550b0
add esp, 0x7c
ret 4
xor ecx, ecx
mov esi, 0x100
mov edi, edi
lea eax, [esi + ecx]
sar eax, 1
cmp edx, dword [ebp + eax*4 + 0x444]
jl 0x534432
mov ecx, eax
jmp 0x534434
mov esi, eax
mov eax, esi
sub eax, ecx
cmp eax, 1
jne 0x534420
mov eax, dword [ebp + 0xc54]
mov dword [ebp + 0x3c], ecx
mov ecx, edx
shr ecx, 1
movzx eax, byte [ecx + eax]
movzx ecx, dl
and cl, 1
add cl, cl
add cl, cl
shr eax, cl
mov ecx, dword [ebp + 0xc50]
movzx edx, word [ecx + edx*2]
and eax, 0xf
shl eax, 0x10
or eax, edx
mov dword [ebp + 0x38], eax
xor ebx, ebx
mov dword [ebp + 0x440], 1
jmp 0x534310
mov esi, dword [esp + 0x1c]
xor edx, edx
cmp esi, ebx
mov dword [esp + 0x10], edx
jle 0x5344bd
mov edi, edi
mov ecx, dword [ebp + 0xc4c]
movzx eax, byte [ecx + edx*4]
mov edi, dword [ebp + eax*4 + 0x444]
lea eax, [ebp + eax*4 + 0x444]
lea ecx, [ecx + edi*4]
mov edi, edx
shl edi, 8
or dword [ecx], edi
inc dword [eax]
inc edx
cmp edx, esi
jl 0x534490
mov dword [esp + 0x10], edx
mov ecx, dword [ebp + 0x34]
mov eax, dword [ebp + 0xc4c]
mov edx, dword [eax + ecx*4]
shr edx, 8
cmp byte [ebp + 0x10], 0
mov dword [ebp + 0x38], edx
mov dword [ebp + 0x440], ebx
mov ecx, edx
je 0x534523
mov dword [ebp + 0x14], ebx
mov dword [ebp + 0x18], ebx
mov edx, dword [eax + ecx*4]
movzx eax, dl
mov dword [ebp + 0x38], edx
shr dword [ebp + 0x38], 8
mov dword [ebp + 0x3c], eax
mov dword [ebp + 0x440], 1
mov ecx, dword [0x63ed40]
mov dword [ebp + 0x14], ecx
dec dword [ebp + 0x14]
mov eax, dword [ebp + 0x14]
xor edx, edx
cmp eax, 1
sete dl
mov dword [ebp + 0x18], 1
xor dword [ebp + 0x3c], edx
jmp 0x534310
mov edx, dword [eax + ecx*4]
movzx eax, dl
mov dword [ebp + 0x38], edx
shr dword [ebp + 0x38], 8
mov dword [ebp + 0x3c], eax
mov dword [ebp + 0x440], 1
jmp 0x534310
mov eax, 0xffffffe0
jmp 0x534312
mov eax, 0xffffffe1
jmp 0x534312
mov eax, 0xfffffff4
jmp 0x534312
mov eax, 0xfffffff3
jmp 0x534312
mov eax, 0xffffffe3
jmp 0x534312
mov eax, 0xffffffe2
jmp 0x534312
mov ecx, 8
cmp dword [ebp + 0x20], ecx
mov dword [ebp + 4], 0x2a
jge 0x5345d1
or edx, 0xffffffff
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], ecx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], edx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x5345cc
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x534592
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
cmp al, 0x72
je case.0x532862.43
mov eax, 0xffffffdf
jmp 0x534312
mov ecx, 8
cmp dword [ebp + 0x20], ecx
mov dword [ebp + 4], 0x2b
jge 0x53464f
or edx, 0xffffffff
lea esp, [esp]
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], ecx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], edx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x53464a
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x534610
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
cmp al, 0x45
je case.0x532862.44
mov eax, 0xffffffde
jmp 0x534312
mov ecx, 8
cmp dword [ebp + 0x20], ecx
mov dword [ebp + 4], 0x2c
jge 0x5346d3
or edx, 0xffffffff
jmp 0x534690
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], ecx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], edx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x5346ce
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x534690
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
cmp al, 0x38
je case.0x532862.45
mov eax, 0xffffffdd
jmp 0x534312
mov ecx, 8
cmp dword [ebp + 0x20], ecx
mov dword [ebp + 4], 0x2d
jge 0x534753
or edx, 0xffffffff
jmp 0x534710
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], ecx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], edx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x53474e
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x534710
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
cmp al, 0x50
je case.0x532862.46
mov eax, 0xffffffdc
jmp 0x534312
mov ecx, 8
cmp dword [ebp + 0x20], ecx
mov dword [ebp + 4], 0x2e
jge 0x5347d3
or edx, 0xffffffff
nop
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], ecx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], edx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x5347ce
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x534790
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
cmp al, 0x90
je 0x5347fb
mov eax, 0xffffffdb
jmp 0x534312
mov dword [ebp + 0xc5c], 0
mov ecx, 8
cmp dword [ebp + 0x20], ecx
mov dword [ebp + 4], 0x2f
jge 0x534863
or edx, 0xffffffff
lea esp, [esp]
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], ecx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], edx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x53485e
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x534820
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
mov ecx, dword [ebp + 0xc5c]
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
movzx edx, al
shl ecx, 8
or ecx, edx
mov dword [ebp + 0xc5c], ecx
mov ecx, 8
cmp dword [ebp + 0x20], ecx
mov dword [ebp + 4], 0x30
jge 0x5348e4
or edx, 0xffffffff
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], ecx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], edx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x5348df
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x5348a1
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
mov ecx, dword [ebp + 0xc5c]
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
movzx edx, al
shl ecx, 8
or ecx, edx
mov dword [ebp + 0xc5c], ecx
mov ecx, 8
cmp dword [ebp + 0x20], ecx
mov dword [ebp + 4], 0x31
jge 0x534965
or edx, 0xffffffff
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], ecx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], edx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x534960
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x534922
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
mov ecx, dword [ebp + 0xc5c]
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
movzx edx, al
shl ecx, 8
or ecx, edx
mov dword [ebp + 0xc5c], ecx
mov ecx, 8
cmp dword [ebp + 0x20], ecx
mov dword [ebp + 4], 0x32
jge 0x5349e2
or edx, 0xffffffff
mov eax, dword [ebp]
cmp dword [eax + 4], 0
je 0x534310
mov ebx, dword [eax]
movzx ebx, byte [ebx]
mov edi, dword [ebp + 0x1c]
add dword [ebp + 0x20], ecx
shl edi, 8
or edi, ebx
mov dword [ebp + 0x1c], edi
add dword [eax], esi
mov eax, dword [ebp]
add dword [eax + 4], edx
mov eax, dword [ebp]
add dword [eax + 8], esi
mov eax, dword [ebp]
cmp dword [eax + 8], 0
jne 0x5349dd
add dword [eax + 0xc], esi
cmp dword [ebp + 0x20], ecx
jl 0x5349a3
mov edx, dword [ebp + 0x20]
mov eax, dword [ebp + 0x1c]
lea ecx, [edx - 8]
shr eax, cl
mov ecx, dword [ebp + 0xc5c]
add edx, 0xfffffff8
mov dword [ebp + 0x20], edx
and eax, 0xff
movzx edx, al
shl ecx, 8
or ecx, edx
mov dword [ebp + 0xc5c], ecx
mov dword [ebp + 4], esi
mov eax, 4
jmp 0x534312