Function at 0x4faa50
Capabilities:
Write file on windows

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x788
lea eax, [ebp - 0x14]
push 3
mov dword [ebp - 0x10], esi
mov esi, dword [ebp + 8]
push esi
push eax
mov dword [ebp - 8], ebx
mov ebx, dword [ebp + 0xc]
push ebx
mov dword [ebp - 0xc], edi
mov dword [ebp - 4], 0x5ecb94
mov byte [ebp - 0x6e], 0
call fcn.00506290
add esp, 0x10
mov edi, eax
test edi, edi
je 0x4faaf0
mov edx, dword [ebp + 0x10]
movzx eax, dl
test al, 1
je 0x4faadf
shr edx, 0x18
movzx edx, dl
test edx, 0x80
je 0x4faacf
lea edx, [ebp + 0x1f]
and edx, 0xfffffffc
lea eax, [edx + 4]
test byte [eax - 4], 0x10
je 0x4faacf
add edx, 7
and edx, 0xfffffffc
mov eax, dword [edx]
add edx, 7
and edx, 0xfffffffc
cmp byte [eax], 0x38
mov esi, dword [edx]
jne 0x4faacf
cmp byte [eax + 2], 0x4e
je 0x4fb81b
movzx eax, di
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push str.unknown
push ebx
push 2
push edi
call fcn.004db180
add esp, 0x10
mov edx, dword [ebp - 0x14]
movzx edi, byte [ebp + 0x10]
mov eax, edi
and eax, 1
and edi, 2
movzx ecx, byte [edx + 0x16c]
and ecx, 0xfffffffe
or ecx, eax
xor eax, eax
mov byte [edx + 0x16c], cl
mov ecx, dword [ebp - 0x14]
movzx edx, byte [ecx + 0x16c]
and edx, 0xfffffffd
or edx, edi
mov byte [ecx + 0x16c], dl
mov edi, dword [ebp - 0x14]
mov dword [edi + 0x84], eax
mov edx, dword [ebp - 0x14]
mov dword [edx + 0xf4], eax
mov edi, dword [ebp - 0x14]
mov eax, dword [edi + 0xb8]
mov ecx, dword [edi + 0xbc]
mov dword [edi + 0xb0], eax
movzx eax, byte [ebp + 0x13]
test eax, 0x80
mov dword [edi + 0xb4], ecx
je 0x4fabdd
lea eax, [ebp + 0x1f]
and eax, 0xfffffffc
lea edx, [eax + 4]
mov edi, dword [edx - 4]
test edi, 0x20
je 0x4fab7e
mov edx, dword [ebp - 0x14]
or byte [edx + 0x173], 0x40
test edi, 0x10
je 0x4fabe1
add eax, 7
and eax, 0xfffffffc
mov edx, dword [eax]
add eax, 7
and eax, 0xfffffffc
mov dword [ebp - 0x748], edx
movsx edx, byte [edx]
cmp edx, 0x38
mov eax, dword [eax]
mov dword [ebp - 0x74c], eax
je 0x4fc1dd
cmp edx, 0xb
je 0x4fbfad
cmp edx, 0x38
je 0x4fb912
cmp edx, 1
je 0x4fabe1
push 0x51b
push str.for_rseq_nml.c
push 2
push 8
call fcn.004db180
add esp, 0x10
jmp 0x4fabe1
xor eax, eax
xor edi, edi
cmp ebx, 0xfffffffb
je 0x4fdb2a
mov ecx, dword [ebp - 0x14]
test byte [ecx + 0x169], 0x20
je 0x4fd900
movzx eax, byte [ecx + 0x16b]
test al, 8
je 0x4fac7b
mov eax, dword [ecx + 0x18]
test eax, eax
je 0x4fc227
test byte [eax + 0x44], 2
je 0x4fac51
mov dword [eax + 0x38], 0x103
mov eax, dword [ebp - 0x14]
mov edx, dword [eax + 0x18]
mov dword [edx + 0x3c], 0x1f
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx + 0x64]
test eax, eax
je 0x4fac3f
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x64], edx
mov eax, 0x103
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push 0x1f
movzx eax, byte [ecx + 0x16c]
push 0x103
and eax, 7
push eax
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
test byte [ecx + 0x16a], 0x40
jne 0x4facfa
mov eax, dword [ecx + 0x18]
test eax, eax
je 0x4fc246
test byte [eax + 0x44], 2
je 0x4facd0
mov dword [eax + 0x38], 0x101
mov eax, dword [ebp - 0x14]
mov edx, dword [eax + 0x18]
mov dword [edx + 0x3c], 0x1f
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx + 0x64]
test eax, eax
je 0x4facbe
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x64], edx
mov eax, 0x101
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push 0x1f
movzx eax, byte [ecx + 0x16c]
push 0x101
and eax, 7
push eax
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
test al, 4
je 0x4fad74
test byte [ecx + 0x16d], 4
jne 0x4fc456
mov edx, dword [ecx + 0xb4]
mov dword [ebp - 0x74c], edx
movzx edx, byte [ecx + 0x16c]
mov eax, dword [ecx + 0xc4]
and edx, 8
mov dword [ebp - 0x744], eax
cmp edx, 8
mov edi, dword [ecx + 0xc0]
mov eax, dword [ecx + 0xb0]
je 0x4fc265
sub eax, edi
add eax, dword [ecx + 0x38]
add eax, dword [ecx + 0xd0]
mov dword [ecx + 0x3c], eax
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx + 0xf0]
test edx, edx
je 0x4fad6e
mov eax, dword [ecx + 0x3c]
sub edx, eax
add edx, dword [ecx + 0x38]
mov dword [ecx + 0x90], edx
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx + 0x3c]
mov dword [ecx + 0x50], eax
mov eax, dword [ebp + 0x14]
mov edx, dword [ebp + 0x18]
movzx ecx, byte [ebp + 0x13]
test ecx, 0x80
mov dword [ebp - 0x18], eax
mov dword [ebp - 0x1c], edx
je 0x4fad99
lea eax, [ebp + 0x1f]
and eax, 0xfffffffc
mov edx, dword [eax]
mov dword [ebp - 0x20], edx
jmp 0x4fad9e
xor eax, eax
mov dword [ebp - 0x20], eax
lea eax, [ebp - 0x3a4]
push eax
lea edx, [ebp - 0x4c]
push edx
lea ecx, [ebp + 0x18]
push ecx
lea edi, [ebp + 0x14]
push edi
call fcn.00510550
add esp, 0x10
test eax, eax
je 0x4fae24
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx + 0x18]
test edx, edx
je 0x4fc648
test byte [edx + 0x44], 2
je 0x4fadff
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x14]
mov ecx, dword [edx + 0x18]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x14]
mov edx, dword [ebx + 0x64]
test edx, edx
je 0x4fadf2
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x14]
mov dword [edx + 0x64], ecx
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x4c]
cmp ebx, 0xfffffffb
mov edx, dword [ebp - 0x40]
mov ecx, dword [ebp + 0x14]
mov edi, dword [ebp + 0x18]
mov dword [ebp - 0x24], eax
mov dword [ebp - 0x28], edx
mov dword [ebp - 0x2c], ecx
mov dword [ebp - 0x30], edi
je 0x4faf0c
mov eax, dword [ebp - 0x14]
mov edx, dword [eax + 0x7c]
test edx, edx
je 0x4fae62
movzx edx, byte [edx + 0x1f]
test edx, edx
je 0x4fae62
mov edx, dword [eax + 0x3c]
mov dword [eax + 0x48], edx
jmp 0x4faefe
xor edx, edx
push edx
push edx
push eax
call fcn.005151b0
add esp, 0xc
test eax, eax
je 0x4faeda
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx + 0x18]
test edx, edx
je 0x4fc662
test byte [edx + 0x44], 2
je 0x4faeb5
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x14]
mov ecx, dword [edx + 0x18]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x14]
mov edx, dword [ebx + 0x64]
test edx, edx
je 0x4faea8
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x14]
mov dword [edx + 0x64], ecx
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x14]
add dword [eax + 0x98], 1
adc dword [eax + 0x9c], 0
mov edx, dword [ebp - 0x14]
and byte [edx + 0x16f], 0xfb
mov edi, dword [ebp - 0x14]
mov ecx, dword [edi + 0x3c]
mov dword [edi + 0x48], ecx
mov eax, dword [ebp - 0x14]
mov eax, dword [eax + 0x7c]
test eax, eax
je 0x4faf0c
mov byte [eax + 0x1f], 0
lea eax, [ebp - 0x34]
push eax
push 0
push 0x7d0
call fcn.00505140
add esp, 0xc
test eax, eax
je 0x4faf8a
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx + 0x18]
test edx, edx
je 0x4fc67c
test byte [edx + 0x44], 2
je 0x4faf65
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x14]
mov ecx, dword [edx + 0x18]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x14]
mov edx, dword [ebx + 0x64]
test edx, edx
je 0x4faf58
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x14]
mov dword [edx + 0x64], ecx
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov eax, 0xffffffff
mov byte [ebp - 0x70], al
mov byte [ebp - 0x6f], al
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x50], 0
mov dword [ebp - 0x3c], 1
test byte [eax + 0x168], 2
jne 0x4fd850
mov byte [eax + 0x15d], 0x20
xor eax, eax
mov edi, dword [ebp - 0x14]
mov dword [ebp - 0x64], edx
mov dword [0x642804], 1
or byte [edi + 0x172], 8
xor edi, edi
mov eax, dword [ebp - 0x14]
movsx edx, byte [ebp - 0x70]
mov dword [ebp - 0x60], ecx
mov dword [ebp - 0x5c], edi
mov dword [ebp - 0x58], ebx
mov ebx, edi
mov dword [ebp - 0x54], esi
lea esi, [ebp - 0x750]
mov edi, dword [ebp - 0x34]
lea ecx, [ebp - 0x200]
mov dword [ebp - 0x38], edx
mov edx, dword [ebp - 0x3c]
mov byte [ebp - 0x70], bl
mov dword [ebp - 0x200], edi
mov dword [ebp - 0x1fc], ebx
mov byte [ebp - 0x6d], bl
mov dword [ebp - 0x1f8], ebx
mov dword [ebp - 0x1f4], ebx
mov dword [ebp - 0x1f0], ebx
mov dword [ebp - 0x78], ebx
mov dword [ebp - 0x74], ebx
mov dword [ebp - 0x6c], ebx
mov dword [esp + 0xc], esi
call fcn.00500d10
mov edx, eax
test edx, edx
jne 0x4fb059
mov ecx, dword [ebp - 0x3c]
mov edi, ecx
shl edi, 4
add edi, ecx
mov dword [ebp - 0x50], ecx
movsx ecx, byte [ebp - 0x70]
movsx ecx, byte [edi + ecx + 0x5ef7e0]
mov dword [ebp - 0x3c], ecx
jmp 0x4fb062
mov dword [ebp - 0x3c], 0
mov ecx, ebx
mov esi, dword [ebp - 0x30]
mov edi, dword [ebp - 0x2c]
jmp 0x4fb07a
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x120], 0xffffffff
mov ecx, dword [ebp - 0x3c]
cmp ecx, 0xc
ja case.0x4fb083.0
jmp dword [ecx*4 + 0x5ef8e0]
mov ebx, dword [ebp - 0x58]
mov esi, dword [ebp - 0x54]
push dword [ebp - 0x34]
call fcn.00505200
add esp, 4
test eax, eax
jne 0x4fc813
mov eax, dword [ebp - 0x14]
test byte [eax + 0x168], 2
jne 0x4fc785
cmp byte [ebp - 0x70], 1
je 0x4fc6f7
cmp ebx, 0xfffffffb
je 0x4fc6b0
and byte [eax + 0x16c], 0xdc
and byte [eax + 0x16e], 0xf7
mov edi, dword [ebp - 0x14]
mov ecx, dword [edi + 0x50]
test ecx, ecx
jne 0x4fb0e1
mov ecx, dword [edi + 0x44]
mov eax, ecx
cdq
mov eax, dword [edi + 0xc0]
add ecx, eax
mov ebx, edx
adc ebx, dword [edi + 0xc4]
sub ecx, dword [edi + 0xd0]
mov eax, dword [edi + 0x38]
sbb ebx, dword [edi + 0xd4]
cdq
sub ecx, dword [edi + 0x38]
mov dword [edi + 0xb8], ecx
sbb ebx, edx
mov dword [edi + 0xbc], ebx
mov ecx, dword [ebp - 0x14]
push dword [ecx + 0x100]
call fcn.00505780
add esp, 4
test eax, eax
je 0x4fb191
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx + 0x18]
test edx, edx
je 0x4fc696
test byte [edx + 0x44], 2
je 0x4fb16c
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x14]
mov ecx, dword [edx + 0x18]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x14]
mov edx, dword [ebx + 0x64]
test edx, edx
je 0x4fb15f
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x14]
mov dword [edx + 0x64], ecx
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
xor eax, eax
mov dword [esi + 4], 0
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
lea esi, [ebp - 0x750]
movsx edx, byte [ebp - 0x70]
cmp edx, 6
je 0x4fcd84
cmp dword [ebp - 0x3d0], 0
je 0x4fb205
cmp dword [ebp - 0x740], 0
jle 0x4fb1ef
mov eax, ebx
lea ecx, [eax*8]
lea edi, [ecx + eax*4]
mov ecx, dword [ebp + edi - 0x5c8]
mov dword [ebp + eax*4 - 0x454], ecx
inc eax
cmp eax, dword [ebp - 0x740]
jl 0x4fb1ce
mov eax, dword [ebp - 0x750]
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x3d0], 0
mov dword [ebp - 0x64], ebx
cmp edx, 0xe
je 0x4fcc7b
cmp dword [ebp - 0x74c], 0x38
je 0x4fcbb0
cmp edx, 9
je 0x4fcaee
mov eax, dword [ebp - 0x740]
mov dword [ebp - 0x224], eax
cmp dword [ebp - 0x50], 0xa
je 0x4fca11
mov eax, dword [ebp - 0x1f8]
mov edi, eax
mov ecx, dword [ebp - 0x1f4]
or edi, ecx
je 0x4fb273
cmp dword [ebp - 0x224], 0
je 0x4fc890
mov edi, ecx
sub edi, ebx
jae 0x4fb267
mov eax, dword [ebp - 0x14]
jmp 0x4faff0
or edi, eax
jne 0x4fb28e
mov eax, dword [ebp - 0x14]
jmp 0x4faff0
mov dword [ebp - 0x1f8], 1
mov eax, 1
mov dword [ebp - 0x1f4], 0
mov ecx, ebx
mov edx, dword [ebp - 0x224]
mov edi, dword [ebp - 0x64]
jmp 0x4fb2ab
mov dword [ebp - 0x1f8], eax
mov dword [ebp - 0x1f4], ecx
mov edx, dword [ebp - 0x740]
test edx, edx
je 0x4fb305
test edi, edi
jne 0x4fc949
mov ecx, ebx
test edx, edx
jle 0x4fb2f2
mov dword [ebp - 0x64], edi
mov eax, ebx
lea esi, [eax*8]
lea edi, [esi + eax*4]
mov esi, dword [ebp + eax*4 - 0x454]
sub esi, dword [ebp + edi - 0x73c]
inc eax
imul esi, dword [ebp + edi - 0x734]
add ecx, esi
cmp eax, edx
jl 0x4fb2c2
mov edi, dword [ebp - 0x64]
lea esi, [ebp - 0x750]
add ecx, dword [ebp - 0x60]
movsx eax, byte [ebp - 0x6d]
test eax, eax
mov dword [ebp - 0x750], ecx
je 0x4fb30d
jmp 0x4fb337
movsx edx, byte [ebp - 0x6d]
test edx, edx
jne 0x4fb34c
mov eax, esi
lea edx, [ebp - 0x200]
call fcn.004fe120
test eax, eax
jne 0x4fac6e
mov eax, dword [ebp - 0x1f8]
mov ecx, dword [ebp - 0x1f4]
cmp dword [ebp - 0x740], 0
je 0x4fb34c
mov eax, esi
call fcn.004fdff0
mov edi, eax
mov eax, dword [ebp - 0x1f8]
mov ecx, dword [ebp - 0x1f4]
add eax, 0xffffffff
adc ecx, 0xffffffff
mov edx, ecx
sub edx, ebx
jb 0x4fca02
or edx, eax
jne 0x4fb299
jmp 0x4fca02
mov eax, dword [ebp - 0x14]
lea esi, [ebp - 0x750]
movsx edx, byte [ebp - 0x70]
jmp 0x4faff0
lea esi, [ebp - 0x750]
mov eax, dword [ebp - 0x740]
cmp eax, dword [ebp - 0x1f0]
jne 0x4fd014
mov dword [ebp - 0x3c8], 0
test eax, eax
jg 0x4fcd9e
mov dword [ebp - 0x3d0], 1
mov eax, dword [ebp - 0x14]
movsx edx, byte [ebp - 0x70]
jmp 0x4faff0
lea esi, [ebp - 0x750]
cmp dword [ebp - 0x74c], 0x38
jne 0x4fd18e
mov ecx, dword [ebp - 0x74]
test ecx, ecx
mov eax, dword [ebp - 0x744]
jne 0x4fb3e0
mov dword [ebp - 0x74], eax
mov ecx, eax
mov edx, dword [ebp - 0x78]
test edx, edx
jl 0x4fd186
cmp edx, ecx
jg 0x4fd186
cmp ecx, eax
jg 0x4fd0cd
mov dword [ebp - 0x3d8], edx
mov dword [ebp - 0x3d4], ecx
mov dword [ebp - 0x3cc], 1
mov eax, dword [ebp - 0x14]
movsx edx, byte [ebp - 0x70]
jmp 0x4faff0
mov dword [ebp + 0x14], edi
mov eax, ebx
mov dword [ebp + 0x18], esi
mov dword [0x642804], 1
mov dword [0x642808], ebx
mov dword [0x64280c], ebx
lea edx, [ebp - 0x3a4]
push edx
lea ecx, [ebp - 0x4c]
push ecx
lea esi, [ebp + 0x18]
push esi
lea edi, [ebp + 0x14]
push edi
call fcn.00510550
add esp, 0x10
test eax, eax
jne 0x4fd60e
cmp dword [ebp - 0x44], 1
je 0x4fd54c
mov edx, dword [ebp - 0x40]
mov edi, dword [ebp - 0x4c]
mov esi, dword [ebp - 0x200]
cmp edx, dword [ebp - 0x1fc]
jne 0x4fb50d
test edx, edx
jle 0x4fdfd7
xor eax, eax
movzx ecx, byte [ebp + 0x10]
and ecx, 0x20
mov dword [ebp - 0x68], ecx
mov dword [ebp - 0x214], edi
mov dword [ebp - 0x218], ebx
mov ebx, eax
mov dword [ebp - 0x204], edx
movsx edx, byte [edi]
movsx ecx, byte [esi]
cmp dword [ebp - 0x68], 0
je 0x4fb4be
cmp ecx, edx
jne 0x4fd247
jmp 0x4fb4eb
push edx
mov dword [ebp - 0x208], ecx
call fcn.00555620
mov ecx, dword [ebp - 0x208]
push ecx
mov dword [ebp - 0x20c], eax
call fcn.00555620
add esp, 8
cmp eax, dword [ebp - 0x20c]
jne 0x4fd247
inc ebx
inc edi
inc esi
cmp ebx, dword [ebp - 0x204]
jl 0x4fb4a8
mov edx, dword [ebp - 0x204]
mov eax, dword [ebp - 0x214]
mov ebx, 1
mov dword [ebp - 4], eax
mov dword [ebp - 0x5c], edx
lea edx, [ebp - 0x3a4]
push edx
lea ecx, [ebp - 0x4c]
push ecx
lea esi, [ebp + 0x18]
push esi
lea edi, [ebp + 0x14]
push edi
call fcn.00510550
add esp, 0x10
test eax, eax
jne 0x4fd4cf
mov eax, dword [ebp - 0x14]
test byte [eax + 0x168], 2
je 0x4fb672
test ebx, ebx
jne 0x4fb555
mov edx, dword [ebp + 0x14]
cmp byte [edx], 0x3c
jne 0x4fb43b
jmp 0x4fd252
mov esi, dword [ebp - 0x30]
xor ebx, ebx
mov edi, dword [ebp - 0x2c]
mov ecx, dword [ebp - 0x48]
mov edx, dword [ebp - 0x4c]
mov dword [ebp - 0x748], ecx
mov ecx, dword [ebp - 0x40]
mov dword [ebp - 0x750], edx
mov edx, dword [ebp - 0x44]
mov dword [ebp - 0x744], ecx
mov ecx, dword [ebp - 0x3a4]
cmp ecx, 7
mov dword [ebp - 0x74c], edx
mov dword [ebp - 0x3c8], 0
jl 0x4fb63d
cmp ecx, 9
jg 0x4fb63d
mov ecx, dword [ebp - 0x3a0]
test ecx, ecx
mov dword [ebp - 0x740], ecx
jle 0x4fb631
mov dword [ebp - 0x3b0], eax
mov edx, ebx
lea eax, [edx*8]
lea edi, [eax + edx*4]
mov ecx, dword [ebp + edi - 0x394]
mov esi, dword [ebp + edi - 0x398]
cmp ecx, esi
mov eax, dword [ebp + edi - 0x390]
mov dword [ebp + edi - 0x5c8], ecx
mov dword [ebp + edi - 0x73c], ecx
mov dword [ebp + edi - 0x5c4], esi
mov dword [ebp + edi - 0x738], esi
je 0x4fb608
test eax, eax
je 0x4fb608
mov dword [ebp - 0x3c8], 1
mov dword [ebp + edi - 0x5c0], eax
inc edx
mov dword [ebp + edi - 0x734], eax
cmp edx, dword [ebp - 0x740]
jl 0x4fb5bb
mov eax, dword [ebp - 0x3b0]
mov esi, dword [ebp - 0x30]
mov edi, dword [ebp - 0x2c]
mov edx, dword [ebp - 0x74c]
mov dword [ebp - 0x3d0], 1
jmp 0x4fb649
mov dword [ebp - 0x740], ebx
mov dword [ebp - 0x3d0], ebx
mov byte [ebp - 0x6e], dl
mov dword [ebp - 0x3cc], 0
test byte [eax + 0x168], 2
jne 0x4fd3b8
movsx edx, byte [ebp - 0x70]
lea esi, [ebp - 0x750]
jmp 0x4faff0
test ebx, ebx
je 0x4fb43b
jmp 0x4fb555
lea esi, [ebp - 0x750]
cmp dword [ebp - 0x50], 4
je 0x4fd68b
mov eax, dword [ebp - 0x14]
movsx edx, byte [ebp - 0x70]
jmp 0x4faff0
lea esi, [ebp - 0x750]
mov edi, dword [ebp - 0x200]
mov edx, dword [ebp - 0x14]
movzx eax, byte [edi]
mov byte [edx + 0x15d], al
mov eax, dword [ebp - 0x14]
movsx edx, byte [ebp - 0x70]
jmp 0x4faff0
lea esi, [ebp - 0x750]
push ebx
and byte [ebp + 0x10], 0xbf
or byte [ebp + 0x12], 2
push ebx
push dword [ebp - 0x20]
push dword [ebp - 0x1c]
push dword [ebp - 0x18]
push dword [ebp + 0x10]
push 0xfffffffffffffffe
push dword [ebp - 0x54]
call fcn.0051cb10
add esp, 0x20
test eax, eax
jne 0x4fd737
mov eax, dword [ebp - 0x50]
cmp eax, 0xa
jne 0x4fb70b
mov dword [ebp - 0x3c], 5
mov eax, dword [ebp - 0x14]
movsx edx, byte [ebp - 0x70]
jmp 0x4faff0
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x14]
movsx edx, byte [ebp - 0x70]
jmp 0x4faff0
lea esi, [ebp - 0x750]
push ebx
or byte [ebp + 0x10], 0x40
or byte [ebp + 0x12], 2
push ebx
push dword [ebp - 0x20]
push dword [ebp - 0x1c]
push dword [ebp - 0x18]
push dword [ebp + 0x10]
push 0xfffffffffffffffe
push dword [ebp - 0x54]
call fcn.0051cb10
add esp, 0x20
test eax, eax
jne 0x4fd7b4
mov eax, dword [ebp - 0x50]
cmp eax, 0xa
jne 0x4fb70b
mov dword [ebp - 0x3c], 5
mov eax, dword [ebp - 0x14]
movsx edx, byte [ebp - 0x70]
jmp 0x4faff0
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx + 0x3c]
dec edx
mov eax, dword [ecx + 0x48]
cmp edx, eax
ja 0x4fb776
mov edx, eax
mov dword [ecx + 0x68], edx
mov esi, dword [ebp - 0x14]
mov ebx, dword [esi + 0x44]
sub ebx, dword [esi + 0x3c]
cmp ebx, 0x14
jl 0x4fb78c
mov ebx, 0x14
mov dword [esi + 0x104], ebx
push dword [ebp - 0x34]
call fcn.00505200
add esp, 4
mov eax, dword [ebp - 0x14]
call fcn.00504640
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx + 0x18]
test eax, eax
je 0x4fd831
test byte [eax + 0x44], 2
je 0x4fb7f1
mov edx, 0x11
mov dword [eax + 0x38], edx
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x18]
mov dword [ecx + 0x3c], edx
mov ebx, dword [ebp - 0x14]
mov eax, dword [ebx + 0x64]
test eax, eax
je 0x4fb7df
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x64], edx
mov eax, 0x11
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov eax, 0x11
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x750]
push eax
push ebx
call fcn.00505c70
add esp, 8
test eax, eax
jne 0x4faacf
mov ecx, dword [ebp - 0x750]
xor edx, edx
mov dword [ecx + 0x84], edx
mov ebx, dword [ebp - 0x750]
movzx ecx, byte [ebp + 0x10]
and ecx, 1
mov dword [ebx + 0xf4], edx
mov ebx, dword [ebp - 0x750]
movzx eax, byte [ebx + 0x16c]
and eax, 0xfffffffe
or eax, ecx
mov byte [ebx + 0x16c], al
mov ecx, dword [ebp - 0x750]
mov eax, dword [esi]
mov dword [ecx + 0xf4], eax
mov eax, dword [ebp - 0x750]
mov esi, dword [esi + 4]
mov dword [eax + 0x84], esi
mov ecx, dword [ebp - 0x750]
mov eax, dword [ecx + 0x18]
test eax, eax
je 0x4fb8f8
test byte [eax + 0x44], 2
je 0x4fb8d3
mov dword [eax + 0x38], edi
mov eax, dword [ebp - 0x750]
mov ecx, dword [eax + 0x18]
mov dword [ecx + 0x3c], edi
mov ebx, dword [ebp - 0x750]
mov eax, dword [ebx + 0x64]
test eax, eax
je 0x4fb8c4
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x750]
mov dword [eax + 0x64], edx
mov eax, edi
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push edi
movzx eax, byte [ecx + 0x16c]
push edi
and eax, 7
push eax
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push ecx
push edi
push edi
push 0
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp - 0x748]
movsx edx, byte [edx + 2]
cmp edx, 6
je 0x4fbe88
cmp edx, 0x52
je 0x4fbd8a
cmp edx, 0x3b
je 0x4fbc64
cmp edx, 0x3c
je 0x4fbb27
cmp edx, 0x51
je 0x4fba29
cmp edx, 0x53
jne 0x4fabc5
push 3
mov ecx, dword [ebp - 0x74c]
lea edx, [ebp - 0x3a8]
push edx
push 0x53
push dword [ecx]
push dword [ecx + 4]
call fcn.004f77b0
add esp, 0x14
test eax, eax
jne 0x4fb9ac
mov ecx, dword [ebp - 0x14]
movzx edx, byte [ecx + 0x163]
mov byte [ecx + 0x164], dl
mov edx, dword [ebp - 0x14]
or byte [edx + 0x173], 0x20
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 0x748]
mov eax, dword [ebp - 0x3a8]
mov byte [ecx + 0x163], al
movsx edx, byte [edx + 4]
jmp 0x4fabc0
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx + 0x18]
test edx, edx
je 0x4fba0f
test byte [edx + 0x44], 2
je 0x4fb9ea
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x14]
mov ecx, dword [edx + 0x18]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x14]
mov edx, dword [ebx + 0x64]
test edx, edx
je 0x4fb9dd
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x14]
mov dword [edx + 0x64], ecx
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push ecx
push eax
push eax
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push 3
mov ecx, dword [ebp - 0x74c]
lea edx, [ebp - 0x3a8]
push edx
push 0x51
push dword [ecx]
push dword [ecx + 4]
call fcn.004f77b0
add esp, 0x14
test eax, eax
jne 0x4fba9f
mov ecx, dword [ebp - 0x14]
movzx edx, byte [ecx + 0x15f]
mov byte [ecx + 0x160], dl
mov edx, dword [ebp - 0x14]
or byte [edx + 0x173], 0x10
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x3a8]
mov edx, dword [ebp - 0x74c]
mov byte [ecx + 0x15f], al
add edx, 8
mov ecx, dword [ebp - 0x748]
add ecx, 4
mov dword [ebp - 0x74c], edx
mov dword [ebp - 0x748], ecx
movsx edx, byte [ecx]
cmp edx, 0x38
je 0x4fbb02
jmp 0x4fabc0
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx + 0x18]
test edx, edx
je 0x4fbb0d
test byte [edx + 0x44], 2
je 0x4fbadd
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x14]
mov ecx, dword [edx + 0x18]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x14]
mov edx, dword [ebx + 0x64]
test edx, edx
je 0x4fbad0
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x14]
mov dword [edx + 0x64], ecx
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov edx, ecx
movsx edx, byte [edx + 2]
jmp 0x4fb949
push ecx
push eax
push eax
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push 3
mov ecx, dword [ebp - 0x74c]
lea edx, [ebp - 0x3a8]
push edx
push 0x3c
push dword [ecx]
push dword [ecx + 4]
call fcn.004f77b0
add esp, 0x14
test eax, eax
jne 0x4fbbdc
mov ecx, dword [ebp - 0x14]
movzx edx, byte [ecx + 0x16e]
mov eax, edx
shr edx, 1
and eax, 0xfffffffb
and edx, 1
shl edx, 2
or eax, edx
mov byte [ecx + 0x16e], al
mov edx, dword [ebp - 0x14]
or byte [edx + 0x173], 8
mov edx, dword [ebp - 0x3a8]
cmp edx, 2
jne 0x4fbba4
mov ecx, dword [ebp - 0x14]
movzx edx, byte [ebp + 0x12]
shr edx, 2
and edx, 1
movzx eax, byte [ecx + 0x16e]
add edx, edx
and eax, 0xfffffffd
or eax, edx
mov byte [ecx + 0x16e], al
jmp 0x4fbbb1
cmp edx, 1
mov edx, dword [ebp - 0x14]
and byte [edx + 0x16e], 0xfd
mov ecx, dword [ebp - 0x748]
add ecx, 4
mov edx, dword [ebp - 0x74c]
add edx, 8
mov dword [ebp - 0x74c], edx
movsx edx, byte [ecx]
cmp edx, 0x38
mov dword [ebp - 0x748], ecx
je 0x4fbc3f
jmp 0x4fabc0
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx + 0x18]
test edx, edx
je 0x4fbc4a
test byte [edx + 0x44], 2
je 0x4fbc1a
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x14]
mov ecx, dword [edx + 0x18]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x14]
mov edx, dword [ebx + 0x64]
test edx, edx
je 0x4fbc0d
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x14]
mov dword [edx + 0x64], ecx
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov edx, ecx
movsx edx, byte [edx + 2]
jmp 0x4fb940
push ecx
push eax
push eax
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push 3
mov ecx, dword [ebp - 0x74c]
lea edx, [ebp - 0x3a8]
push edx
push 0x3b
push dword [ecx]
push dword [ecx + 4]
call fcn.004f77b0
add esp, 0x14
test eax, eax
jne 0x4fbd02
mov edx, dword [ebp - 0x14]
movzx eax, byte [edx + 0x159]
mov byte [edx + 0x15a], al
mov ecx, dword [ebp - 0x14]
or byte [ecx + 0x173], 4
mov edx, dword [ebp - 0x3a8]
cmp edx, 2
je 0x4fbccd
cmp edx, 1
jne 0x4fbcbc
mov edx, dword [ebp - 0x14]
mov byte [edx + 0x159], 0x27
jmp 0x4fbcd7
cmp edx, 3
jne 0x4fbccd
mov edx, dword [ebp - 0x14]
mov byte [edx + 0x159], 0x22
jmp 0x4fbcd7
mov edx, dword [ebp - 0x14]
mov byte [edx + 0x159], 0
mov ecx, dword [ebp - 0x748]
add ecx, 4
mov edx, dword [ebp - 0x74c]
add edx, 8
mov dword [ebp - 0x74c], edx
movsx edx, byte [ecx]
cmp edx, 0x38
mov dword [ebp - 0x748], ecx
je 0x4fbd65
jmp 0x4fabc0
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx + 0x18]
test edx, edx
je 0x4fbd70
test byte [edx + 0x44], 2
je 0x4fbd40
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x14]
mov ecx, dword [edx + 0x18]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x14]
mov edx, dword [ebx + 0x64]
test edx, edx
je 0x4fbd33
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x14]
mov dword [edx + 0x64], ecx
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov edx, ecx
movsx edx, byte [edx + 2]
jmp 0x4fb937
push ecx
push eax
push eax
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push 3
mov ecx, dword [ebp - 0x74c]
lea edx, [ebp - 0x3a8]
push edx
push 0x52
push dword [ecx]
push dword [ecx + 4]
call fcn.004f77b0
add esp, 0x14
test eax, eax
jne 0x4fbe00
mov ecx, dword [ebp - 0x14]
movzx edx, byte [ecx + 0x161]
mov byte [ecx + 0x162], dl
mov edx, dword [ebp - 0x14]
or byte [edx + 0x173], 2
mov ecx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x3a8]
mov edx, dword [ebp - 0x74c]
mov byte [ecx + 0x161], al
add edx, 8
mov ecx, dword [ebp - 0x748]
add ecx, 4
mov dword [ebp - 0x74c], edx
mov dword [ebp - 0x748], ecx
movsx edx, byte [ecx]
cmp edx, 0x38
je 0x4fbe63
jmp 0x4fabc0
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx + 0x18]
test edx, edx
je 0x4fbe6e
test byte [edx + 0x44], 2
je 0x4fbe3e
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x14]
mov ecx, dword [edx + 0x18]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x14]
mov edx, dword [ebx + 0x64]
test edx, edx
je 0x4fbe31
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x14]
mov dword [edx + 0x64], ecx
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov edx, ecx
movsx edx, byte [edx + 2]
jmp 0x4fb92e
push ecx
push eax
push eax
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push 3
mov ecx, dword [ebp - 0x74c]
lea edx, [ebp - 0x3a8]
push edx
push 6
push dword [ecx]
push dword [ecx + 4]
call fcn.004f77b0
add esp, 0x14
test eax, eax
jne 0x4fbf25
mov ecx, dword [ebp - 0x14]
movzx edx, byte [ecx + 0x16b]
mov eax, edx
shr edx, 5
and eax, 0xffffffbf
and edx, 1
shl edx, 6
or eax, edx
mov byte [ecx + 0x16b], al
mov edx, dword [ebp - 0x14]
or byte [edx + 0x173], 1
mov edx, dword [ebp - 0x3a8]
cmp edx, 1
je 0x4fbef0
cmp edx, 2
jne 0x4fbef0
mov edx, dword [ebp - 0x14]
or byte [edx + 0x16b], 0x20
jmp 0x4fbefa
mov edx, dword [ebp - 0x14]
and byte [edx + 0x16b], 0xdf
mov ecx, dword [ebp - 0x748]
add ecx, 4
mov edx, dword [ebp - 0x74c]
add edx, 8
mov dword [ebp - 0x74c], edx
movsx edx, byte [ecx]
cmp edx, 0x38
mov dword [ebp - 0x748], ecx
je 0x4fbf88
jmp 0x4fabc0
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx + 0x18]
test edx, edx
je 0x4fbf93
test byte [edx + 0x44], 2
je 0x4fbf63
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x14]
mov ecx, dword [edx + 0x18]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x14]
mov edx, dword [ebx + 0x64]
test edx, edx
je 0x4fbf56
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x14]
mov dword [edx + 0x64], ecx
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov edx, ecx
movsx edx, byte [edx + 2]
jmp 0x4fb925
push ecx
push eax
push eax
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp - 0x748]
cmp byte [edx + 2], 0x4f
jne 0x4fabc5
mov eax, dword [ebp - 0x14]
test byte [eax + 0x16b], 4
jne 0x4fc0bc
test byte [eax + 0x169], 0x20
jne 0x4fc049
mov edx, dword [eax + 0x18]
test edx, edx
je 0x4fc114
test byte [edx + 0x44], 2
je 0x4fc01f
mov eax, 0x6d
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x14]
mov ecx, dword [edx + 0x18]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x14]
mov eax, dword [ebx + 0x64]
test eax, eax
je 0x4fc00d
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x64], edx
mov eax, 0x6d
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov edx, 0x6d
push edx
movzx ecx, byte [eax + 0x16c]
push edx
and ecx, 7
push ecx
push 0xffffffffffffffff
push eax
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov edx, dword [eax + 0x18]
test edx, edx
je 0x4fc133
test byte [edx + 0x44], 2
je 0x4fc095
mov dword [edx + 0x38], 0x6e
mov eax, dword [ebp - 0x14]
mov edx, dword [eax + 0x18]
mov dword [edx + 0x3c], 0x1f
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx + 0x64]
test eax, eax
je 0x4fc083
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x64], edx
mov eax, 0x6e
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push 0x1f
movzx edx, byte [eax + 0x16c]
push 0x6e
and edx, 7
push edx
push 0xffffffffffffffff
push eax
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x74c]
mov dword [ebp - 0x750], edi
mov edx, dword [ecx]
add edx, 0xffffffff
mov edi, dword [ecx + 4]
adc edi, 0xffffffff
add ecx, 8
mov dword [eax + 0xb0], edx
mov dword [eax + 0xb4], edi
xor eax, eax
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x74c], ecx
mov edi, dword [ebp - 0x750]
mov ecx, dword [edx + 0xb4]
sub ecx, eax
jl 0x4fc14f
mov edx, dword [ebp - 0x748]
add edx, 4
mov dword [ebp - 0x748], edx
movsx edx, byte [edx]
jmp 0x4fabb7
push eax
mov edx, 0x6d
push edx
push edx
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push eax
push 0x1f
push 0x6e
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov eax, dword [edx + 0x18]
test eax, eax
je 0x4fc1be
test byte [eax + 0x44], 2
je 0x4fc194
mov edx, 0x6f
mov dword [eax + 0x38], edx
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x18]
mov dword [ecx + 0x3c], edx
mov ebx, dword [ebp - 0x14]
mov eax, dword [ebx + 0x64]
test eax, eax
je 0x4fc182
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x64], edx
mov eax, 0x6f
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov eax, 0x6f
push eax
movzx ecx, byte [edx + 0x16c]
push eax
and ecx, 7
push ecx
push 0xffffffffffffffff
push edx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push edx
mov eax, 0x6f
push eax
push eax
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp - 0x748]
movsx edx, byte [edx + 2]
cmp edx, 0x4e
jne 0x4fb91c
mov ecx, dword [ebp - 0x14]
mov edx, dword [eax]
mov dword [ecx + 0xf4], edx
mov ecx, dword [ebp - 0x14]
mov edx, dword [eax + 4]
add eax, 8
mov dword [ebp - 0x74c], eax
mov dword [ecx + 0x84], edx
mov edx, dword [ebp - 0x748]
add edx, 4
mov dword [ebp - 0x748], edx
movsx edx, byte [edx]
jmp 0x4fabae
push ecx
push 0x1f
push 0x103
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push ecx
push 0x1f
push 0x101
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov edx, eax
sub edx, edi
mov edx, dword [ebp - 0x74c]
sbb edx, dword [ebp - 0x744]
jl 0x4fc2b3
mov edx, dword [ecx + 0xc8]
add edx, edi
mov dword [ebp - 0x748], ecx
mov ecx, dword [ecx + 0xcc]
adc ecx, dword [ebp - 0x744]
mov dword [ebp - 0x750], eax
sub eax, edx
mov edx, dword [ebp - 0x74c]
mov eax, dword [ebp - 0x750]
sbb edx, ecx
mov ecx, dword [ebp - 0x748]
jl 0x4fad42
mov edi, dword [ecx + 0xe4]
lea ecx, [ebp - 0x21c]
push 0
push ecx
mov edx, dword [ebp - 0x74c]
push eax
mov dword [ebp - 0x220], eax
mov dword [ebp - 0x21c], edx
push edi
call dword [sym.imp.KERNEL32.dll_SetFilePointer]
mov dword [ebp - 0x220], eax
cmp eax, 0xffffffff
je 0x4fc425
mov ecx, dword [ebp - 0x21c]
mov edx, 0xffffffff
sub eax, edx
sub ecx, edx
or eax, ecx
je 0x4fc385
mov edi, dword [ebp - 0x14]
mov edx, dword [edi + 0xb0]
mov ecx, dword [edi + 0xb4]
mov dword [edi + 0xb8], edx
mov dword [edi + 0xbc], ecx
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx + 0xb0]
mov edx, dword [ecx + 0xb4]
mov dword [ecx + 0xc0], eax
xor eax, eax
mov dword [ecx + 0xc4], edx
mov edi, dword [ebp - 0x14]
mov dword [edi + 0xd0], eax
mov dword [edi + 0xd4], eax
mov edx, dword [ebp - 0x14]
mov dword [edx + 0xc8], eax
mov dword [edx + 0xcc], eax
mov edi, dword [ebp - 0x14]
mov ecx, dword [edi + 0xc8]
mov dword [edi + 0xf0], ecx
mov edx, dword [ebp - 0x14]
and byte [edx + 0x16d], 0xfd
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x90], eax
mov edi, dword [ebp - 0x14]
mov dword [edi + 0x50], eax
jmp 0x4fad74
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov edx, dword [ebp - 0x14]
mov dword [edx + 0xe8], eax
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx + 0x18]
test eax, eax
je 0x4fc406
test byte [eax + 0x44], 2
je 0x4fc3dc
mov edx, 0x27
mov dword [eax + 0x38], edx
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x18]
mov dword [ecx + 0x3c], edx
mov ebx, dword [ebp - 0x14]
mov eax, dword [ebx + 0x64]
test eax, eax
je 0x4fc3ca
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x64], edx
mov eax, 0x27
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov eax, 0x27
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push ecx
mov eax, 0x27
push eax
push eax
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
call dword [sym.imp.KERNEL32.dll_GetLastError]
test eax, eax
je 0x4fc445
mov eax, 0xffffffff
mov dword [ebp - 0x220], eax
mov dword [ebp - 0x21c], eax
jmp 0x4fc385
mov eax, dword [ebp - 0x220]
mov ecx, dword [ebp - 0x21c]
jmp 0x4fc2f1
mov eax, dword [ecx + 0x13c]
test eax, eax
mov edi, dword [ecx + 0x38]
jne 0x4fc468
mov eax, 0x20000
mov edx, dword [ecx + 0x40]
sub edx, edi
mov dword [ebp - 0x750], edx
cmp edx, eax
ja 0x4fc4b8
push 0
lea eax, [ebp - 0x210]
push eax
push dword [ebp - 0x750]
push edi
push dword [ecx + 0xe4]
mov dword [ebp - 0x748], ecx
call dword [sym.imp.KERNEL32.dll_WriteFile]
mov ecx, dword [ebp - 0x748]
test eax, eax
mov eax, 0xffffffff
je 0x4fc4ad
mov eax, 1
mov dword [ebp - 0x74c], eax
jmp 0x4fc53f
mov dword [ebp - 0x74c], eax
mov dword [ebp - 0x58], ebx
mov ebx, ecx
mov dword [ebp - 0x54], esi
mov esi, edx
push 0
lea eax, [ebp - 0x210]
push eax
push dword [ebp - 0x74c]
push edi
push dword [ebx + 0xe4]
call dword [sym.imp.KERNEL32.dll_WriteFile]
test eax, eax
jne 0x4fc4fc
mov esi, dword [ebp - 0x54]
mov ecx, ebx
mov ebx, dword [ebp - 0x58]
mov dword [ebp - 0x74c], 0xffffffff
jmp 0x4fc53f
mov eax, dword [ebx + 0x13c]
test eax, eax
mov edx, dword [ebp - 0x210]
jne 0x4fc511
mov eax, 0x20000
sub esi, edx
add edi, edx
cmp esi, eax
jae 0x4fc525
mov dword [ebp - 0x74c], esi
test esi, esi
jne 0x4fc529
jmp 0x4fc52d
test esi, esi
je 0x4fc52d
test edx, edx
ja 0x4fc4c8
mov esi, dword [ebp - 0x54]
mov ecx, ebx
mov ebx, dword [ebp - 0x58]
mov dword [ebp - 0x74c], 1
mov eax, dword [ebp - 0x750]
xor edx, edx
mov dword [ecx + 0xa8], edx
mov dword [ecx + 0xac], edx
cdq
add eax, dword [ecx + 0xc0]
mov edi, dword [ecx + 0x38]
mov dword [ecx + 0x40], edi
adc edx, dword [ecx + 0xc4]
add edi, dword [ecx + 0xf8]
and byte [ecx + 0x16d], 0xfb
mov dword [ecx + 0x44], edi
mov dword [ecx + 0xc0], eax
mov dword [ecx + 0xc4], edx
mov dword [ecx + 0xb8], eax
mov dword [ecx + 0xbc], edx
cmp dword [ebp - 0x74c], 0xffffffff
je 0x4fc59f
mov ecx, dword [ebp - 0x14]
jmp 0x4fad0b
mov dword [ebp - 0x748], ecx
call dword [sym.imp.KERNEL32.dll_GetLastError]
mov ecx, dword [ebp - 0x748]
mov dword [ecx + 0xe8], eax
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx + 0x18]
test eax, eax
je 0x4fc629
test byte [eax + 0x44], 2
je 0x4fc5ff
mov edx, 0x26
mov dword [eax + 0x38], edx
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x18]
mov dword [ecx + 0x3c], edx
mov ebx, dword [ebp - 0x14]
mov eax, dword [ebx + 0x64]
test eax, eax
je 0x4fc5ed
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x64], edx
mov eax, 0x26
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov eax, 0x26
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push ecx
mov eax, 0x26
push eax
push eax
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push ecx
push eax
push eax
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push ecx
push eax
push eax
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push ecx
push eax
push eax
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push ecx
push eax
push eax
push 0
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
cmp dword [eax + 0x70], 0
je 0x4fb0c6
push dword [eax + 0x38]
call fcn.00505200
add esp, 4
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx + 0x70]
mov eax, dword [ecx + 0x38]
mov dword [ecx + 0x38], edx
sub eax, edx
mov ebx, dword [ebp - 0x14]
sub dword [ebx + 0x3c], eax
mov edi, dword [ebp - 0x14]
sub dword [edi + 0x44], eax
mov edx, dword [ebp - 0x14]
sub dword [edx + 0x48], eax
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x70], 0
mov eax, dword [ebp - 0x14]
jmp 0x4fb0c6
mov edx, dword [eax + 0x18]
test edx, edx
je 0x4fc766
test byte [edx + 0x44], 2
je 0x4fc73c
mov eax, 0x18
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x14]
mov ecx, dword [edx + 0x18]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x14]
mov eax, dword [ebx + 0x64]
test eax, eax
je 0x4fc72a
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x64], edx
mov eax, 0x18
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov edx, 0x18
push edx
movzx ecx, byte [eax + 0x16c]
push edx
and ecx, 7
push ecx
push 0xffffffffffffffff
push eax
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push eax
mov edx, 0x18
push edx
push edx
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
call fcn.00504640
test eax, eax
jne 0x4fc796
mov eax, dword [ebp - 0x14]
jmp 0x4fb0b3
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx + 0x18]
test edx, edx
je 0x4fc7f9
test byte [edx + 0x44], 2
je 0x4fc7d4
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x14]
mov ecx, dword [edx + 0x18]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x14]
mov edx, dword [ebx + 0x64]
test edx, edx
je 0x4fc7c7
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x14]
mov dword [edx + 0x64], ecx
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push ecx
push eax
push eax
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx + 0x18]
test edx, edx
je 0x4fc876
test byte [edx + 0x44], 2
je 0x4fc851
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x14]
mov ecx, dword [edx + 0x18]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x14]
mov edx, dword [ebx + 0x64]
test edx, edx
je 0x4fc844
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x14]
mov dword [edx + 0x64], ecx
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push ecx
push eax
push eax
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 4]
mov edi, dword [ebp - 0x5c]
mov dword [ecx + 0x68], edx
mov ebx, dword [ebp - 0x14]
mov dword [ebx + 0x104], edi
push dword [ebp - 0x34]
call fcn.00505200
add esp, 4
mov eax, dword [ebp - 0x14]
call fcn.00504640
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx + 0x18]
test eax, eax
je 0x4fc92a
test byte [eax + 0x44], 2
je 0x4fc900
mov edx, 0x12
mov dword [eax + 0x38], edx
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x18]
mov dword [ecx + 0x3c], edx
mov ebx, dword [ebp - 0x14]
mov eax, dword [ebx + 0x64]
test eax, eax
je 0x4fc8ee
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x64], edx
mov eax, 0x12
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov eax, 0x12
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push ecx
mov eax, 0x12
push eax
push eax
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 4]
mov edi, dword [ebp - 0x5c]
mov dword [ecx + 0x68], edx
mov ebx, dword [ebp - 0x14]
mov dword [ebx + 0x104], edi
push dword [ebp - 0x34]
call fcn.00505200
add esp, 4
mov eax, dword [ebp - 0x14]
call fcn.00504640
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx + 0x18]
test eax, eax
je 0x4fc9e3
test byte [eax + 0x44], 2
je 0x4fc9b9
mov edx, 0x12
mov dword [eax + 0x38], edx
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x18]
mov dword [ecx + 0x3c], edx
mov ebx, dword [ebp - 0x14]
mov eax, dword [ebx + 0x64]
test eax, eax
je 0x4fc9a7
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x64], edx
mov eax, 0x12
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov eax, 0x12
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push ecx
mov eax, 0x12
push eax
push eax
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov dword [ebp - 0x64], edi
mov eax, dword [ebp - 0x14]
movsx edx, byte [ebp - 0x70]
jmp 0x4faff0
cmp dword [ebp - 0x224], 0
je 0x4fca35
mov eax, dword [ebp - 0x1f8]
mov edi, eax
mov ecx, dword [ebp - 0x1f4]
or edi, ecx
jne 0x4fb259
jmp 0x4fb273
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 4]
mov edi, dword [ebp - 0x5c]
mov dword [ecx + 0x68], edx
mov ebx, dword [ebp - 0x14]
mov dword [ebx + 0x104], edi
push dword [ebp - 0x34]
call fcn.00505200
add esp, 4
mov eax, dword [ebp - 0x14]
call fcn.00504640
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx + 0x18]
test eax, eax
je 0x4fcacf
test byte [eax + 0x44], 2
je 0x4fcaa5
mov edx, 0x12
mov dword [eax + 0x38], edx
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x18]
mov dword [ecx + 0x3c], edx
mov ebx, dword [ebp - 0x14]
mov eax, dword [ebx + 0x64]
test eax, eax
je 0x4fca93
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x64], edx
mov eax, 0x12
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov eax, 0x12
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push ecx
mov eax, 0x12
push eax
push eax
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp - 0x14]
mov eax, dword [edx + 0x3c]
sub eax, dword [ebp - 0x1fc]
mov dword [edx + 0x68], eax
mov ebx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1fc]
mov dword [ebx + 0x104], ecx
push dword [ebp - 0x34]
call fcn.00505200
add esp, 4
mov eax, dword [ebp - 0x14]
call fcn.00504640
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx + 0x18]
test eax, eax
je 0x4fcb91
test byte [eax + 0x44], 2
je 0x4fcb67
mov edx, 0x40
mov dword [eax + 0x38], edx
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x18]
mov dword [ecx + 0x3c], edx
mov ebx, dword [ebp - 0x14]
mov eax, dword [ebx + 0x64]
test eax, eax
je 0x4fcb55
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x64], edx
mov eax, 0x40
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov eax, 0x40
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push ecx
mov eax, 0x40
push eax
push eax
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
cmp edx, 9
je 0x4fb224
mov edx, dword [ebp - 0x14]
mov eax, dword [edx + 0x3c]
sub eax, dword [ebp - 0x1fc]
mov dword [edx + 0x68], eax
mov ebx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1fc]
mov dword [ebx + 0x104], ecx
push dword [ebp - 0x34]
call fcn.00505200
add esp, 4
mov eax, dword [ebp - 0x14]
call fcn.00504640
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx + 0x18]
test eax, eax
je 0x4fcc5c
test byte [eax + 0x44], 2
je 0x4fcc32
mov edx, 0x40
mov dword [eax + 0x38], edx
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x18]
mov dword [ecx + 0x3c], edx
mov ebx, dword [ebp - 0x14]
mov eax, dword [ebx + 0x64]
test eax, eax
je 0x4fcc20
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x64], edx
mov eax, 0x40
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov eax, 0x40
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push ecx
mov eax, 0x40
push eax
push eax
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
cmp dword [ebp - 0x38], 0xe
je 0x4fccb6
cmp dword [ebp - 0x50], 9
je 0x4fcc93
mov eax, dword [ebp - 0x14]
movsx edx, byte [ebp - 0x70]
jmp 0x4faff0
cmp dword [ebp - 0x740], 0
jle 0x4fb68f
mov eax, esi
call fcn.004fdff0
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x14]
movsx edx, byte [ebp - 0x70]
jmp 0x4faff0
cmp dword [ebp - 0x740], 0
je 0x4fcccb
mov eax, esi
call fcn.004fdff0
mov dword [ebp - 0x64], eax
jmp 0x4fcc81
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 4]
mov edi, dword [ebp - 0x5c]
mov dword [ecx + 0x68], edx
mov ebx, dword [ebp - 0x14]
mov dword [ebx + 0x104], edi
push dword [ebp - 0x34]
call fcn.00505200
add esp, 4
mov eax, dword [ebp - 0x14]
call fcn.00504640
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx + 0x18]
test eax, eax
je 0x4fcd65
test byte [eax + 0x44], 2
je 0x4fcd3b
mov edx, 0x12
mov dword [eax + 0x38], edx
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x18]
mov dword [ecx + 0x3c], edx
mov ebx, dword [ebp - 0x14]
mov eax, dword [ebx + 0x64]
test eax, eax
je 0x4fcd29
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x64], edx
mov eax, 0x12
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov eax, 0x12
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push ecx
mov eax, 0x12
push eax
push eax
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
cmp dword [ebp - 0x38], 0xe
jne 0x4fb26b
mov byte [ebp - 0x70], 0xe
mov eax, dword [ebp - 0x14]
movsx edx, byte [ebp - 0x70]
jmp 0x4faff0
mov edi, ebx
lea eax, [edi*8]
lea edx, [eax + edi*4]
mov esi, dword [ebp + edx - 0x1ec]
mov eax, dword [ebp + edx - 0x1e4]
mov dword [ebp + edx - 0x5c0], eax
cmp esi, dword [ebp + edx - 0x73c]
jl 0x4fcf5b
cmp esi, dword [ebp + edx - 0x738]
jg 0x4fcf5b
mov ecx, dword [ebp + edx - 0x1e8]
mov dword [ebp + edx - 0x5c8], esi
cmp ecx, dword [ebp + edx - 0x73c]
jl 0x4fcf53
cmp ecx, esi
jge 0x4fce02
test eax, eax
jg 0x4fce9a
cmp ecx, esi
jle 0x4fce12
cmp dword [ebp + edx - 0x5c0], 0
jl 0x4fcf53
mov dword [ebp + edx - 0x5c4], ecx
mov eax, dword [ebp + edx - 0x5c0]
cmp ecx, dword [ebp + edx - 0x5c8]
je 0x4fce44
test eax, eax
je 0x4fce40
mov dword [ebp - 0x3c8], 1
mov eax, dword [ebp + edx - 0x5c0]
jmp 0x4fce44
jg 0x4fce48
jmp 0x4fce82
test eax, eax
jle 0x4fce63
mov esi, dword [ebp + edx - 0x738]
mov ecx, dword [ebp + edx - 0x5c4]
cmp esi, ecx
jl 0x4fce5c
mov esi, ecx
mov dword [ebp + edx - 0x5c4], esi
test eax, eax
jge 0x4fce82
mov ecx, dword [ebp + edx - 0x73c]
mov eax, dword [ebp + edx - 0x5c8]
cmp ecx, eax
jge 0x4fce7b
mov ecx, eax
mov dword [ebp + edx - 0x5c8], ecx
inc edi
cmp edi, dword [ebp - 0x740]
jl 0x4fcda0
lea esi, [ebp - 0x750]
jmp 0x4fb3a5
mov edi, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 4]
mov dword [ecx + 0x68], edx
mov ebx, dword [ebp - 0x14]
mov dword [ebx + 0x104], edi
push dword [ebp - 0x34]
call fcn.00505200
add esp, 4
mov eax, dword [ebp - 0x14]
call fcn.00504640
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx + 0x18]
test eax, eax
je 0x4fcf34
test byte [eax + 0x44], 2
je 0x4fcf0a
mov edx, 0x13
mov dword [eax + 0x38], edx
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x18]
mov dword [ecx + 0x3c], edx
mov ebx, dword [ebp - 0x14]
mov eax, dword [ebx + 0x64]
test eax, eax
je 0x4fcef8
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x64], edx
mov eax, 0x13
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov eax, 0x13
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push ecx
mov eax, 0x13
push eax
push eax
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov edi, dword [ebp - 0x5c]
jmp 0x4fce9d
mov edi, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 4]
mov dword [ecx + 0x68], edx
mov ebx, dword [ebp - 0x14]
mov dword [ebx + 0x104], edi
push dword [ebp - 0x34]
call fcn.00505200
add esp, 4
mov eax, dword [ebp - 0x14]
call fcn.00504640
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx + 0x18]
test eax, eax
je 0x4fcff5
test byte [eax + 0x44], 2
je 0x4fcfcb
mov edx, 0x13
mov dword [eax + 0x38], edx
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x18]
mov dword [ecx + 0x3c], edx
mov ebx, dword [ebp - 0x14]
mov eax, dword [ebx + 0x64]
test eax, eax
je 0x4fcfb9
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x64], edx
mov eax, 0x13
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov eax, 0x13
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push ecx
mov eax, 0x13
push eax
push eax
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 4]
mov edi, dword [ebp - 0x5c]
mov dword [ecx + 0x68], edx
mov ebx, dword [ebp - 0x14]
mov dword [ebx + 0x104], edi
push dword [ebp - 0x34]
call fcn.00505200
add esp, 4
mov eax, dword [ebp - 0x14]
call fcn.00504640
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx + 0x18]
test eax, eax
je 0x4fd0ae
test byte [eax + 0x44], 2
je 0x4fd084
mov edx, 0x13
mov dword [eax + 0x38], edx
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x18]
mov dword [ecx + 0x3c], edx
mov ebx, dword [ebp - 0x14]
mov eax, dword [ebx + 0x64]
test eax, eax
je 0x4fd072
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x64], edx
mov eax, 0x13
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov eax, 0x13
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push ecx
mov eax, 0x13
push eax
push eax
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov edi, dword [ebp - 0x5c]
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 4]
mov dword [ecx + 0x68], edx
mov ebx, dword [ebp - 0x14]
mov dword [ebx + 0x104], edi
push dword [ebp - 0x34]
call fcn.00505200
add esp, 4
mov eax, dword [ebp - 0x14]
call fcn.00504640
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx + 0x18]
test eax, eax
je 0x4fd167
test byte [eax + 0x44], 2
je 0x4fd13d
mov edx, 0x13
mov dword [eax + 0x38], edx
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x18]
mov dword [ecx + 0x3c], edx
mov ebx, dword [ebp - 0x14]
mov eax, dword [ebx + 0x64]
test eax, eax
je 0x4fd12b
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x64], edx
mov eax, 0x13
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov eax, 0x13
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push ecx
mov eax, 0x13
push eax
push eax
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov edi, dword [ebp - 0x5c]
jmp 0x4fd0d0
mov ecx, dword [ebp - 0x14]
mov edx, dword [ebp - 4]
mov edi, dword [ebp - 0x5c]
mov dword [ecx + 0x68], edx
mov ebx, dword [ebp - 0x14]
mov dword [ebx + 0x104], edi
push dword [ebp - 0x34]
call fcn.00505200
add esp, 4
mov eax, dword [ebp - 0x14]
call fcn.00504640
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx + 0x18]
test eax, eax
je 0x4fd228
test byte [eax + 0x44], 2
je 0x4fd1fe
mov edx, 0x13
mov dword [eax + 0x38], edx
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x18]
mov dword [ecx + 0x3c], edx
mov ebx, dword [ebp - 0x14]
mov eax, dword [ebx + 0x64]
test eax, eax
je 0x4fd1ec
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x64], edx
mov eax, 0x13
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov eax, 0x13
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push ecx
mov eax, 0x13
push eax
push eax
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov ebx, dword [ebp - 0x218]
jmp 0x4fb50d
lea edx, [ebp - 0x3a4]
push edx
lea ecx, [ebp - 0x4c]
push ecx
lea esi, [ebp + 0x18]
push esi
lea edi, [ebp + 0x14]
push edi
call fcn.00510550
add esp, 0x10
test eax, eax
jne 0x4fd33b
mov esi, dword [ebp - 0x40]
dec esi
test esi, esi
jle 0x4fb43b
mov dword [ebp - 0x218], ebx
lea ebx, [ebp - 0x3a4]
lea edi, [ebp + 0x18]
push ebx
lea eax, [ebp - 0x4c]
push eax
push edi
lea edx, [ebp + 0x14]
push edx
call fcn.00510550
add esp, 0x10
test eax, eax
jne 0x4fd2be
dec esi
test esi, esi
jg 0x4fd290
nop
lea esi, [esi]
mov ebx, dword [ebp - 0x218]
jmp 0x4fb43b
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx + 0x18]
test edx, edx
je 0x4fd321
test byte [edx + 0x44], 2
je 0x4fd2fc
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x14]
mov ecx, dword [edx + 0x18]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x14]
mov edx, dword [ebx + 0x64]
test edx, edx
je 0x4fd2ef
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x14]
mov dword [edx + 0x64], ecx
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push ecx
push eax
push eax
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx + 0x18]
test edx, edx
je 0x4fd39e
test byte [edx + 0x44], 2
je 0x4fd379
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x14]
mov ecx, dword [edx + 0x18]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x14]
mov edx, dword [ebx + 0x64]
test edx, edx
je 0x4fd36c
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x14]
mov dword [edx + 0x64], ecx
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push ecx
push eax
push eax
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp + 0x14]
cmp byte [edx], 0x3c
je 0x4fd3cf
movsx edx, byte [ebp - 0x70]
lea esi, [ebp - 0x750]
jmp 0x4faff0
mov dword [ebp - 0x3c4], ebx
lea edx, [ebp - 0x3a4]
mov dword [esp + 0xc], edx
lea edx, [ebp - 0x200]
mov dword [esp + 0x10], eax
lea eax, [ebp - 0x38]
mov dword [esp + 0x14], eax
lea ecx, [ebp - 0x34]
mov dword [esp + 0x18], edx
lea eax, [ebp - 0x3c]
mov dword [esp + 0x1c], ecx
lea edx, [ebp - 0x50]
mov dword [esp + 0x20], eax
lea ecx, [ebp - 0x750]
mov dword [esp + 0x24], edx
mov dword [esp + 0x28], ecx
lea ecx, [ebp + 0x10]
mov eax, dword [ebp - 4]
mov dword [esp + 0x2c], eax
lea eax, [ebp + 0x14]
mov edx, dword [ebp - 0x5c]
mov dword [esp + 0x30], edx
lea edx, [ebp + 0x18]
mov dword [esp + 0x34], ecx
lea ecx, [ebp - 0x4c]
mov dword [ebp - 0x3c0], ebx
mov dword [ebp - 0x3bc], 1
call fcn.004fe420
mov edx, eax
test edx, edx
je 0x4fb06a
mov ebx, dword [ebp - 0x14]
mov ecx, dword [ebx + 0x18]
test ecx, ecx
je 0x4fd4b5
test byte [ecx + 0x44], 2
je 0x4fd490
mov dword [ecx + 0x38], edx
mov ecx, dword [ebp - 0x14]
mov ebx, dword [ecx + 0x18]
mov dword [ebx + 0x3c], edx
mov esi, dword [ebp - 0x14]
mov ecx, dword [esi + 0x64]
test ecx, ecx
je 0x4fd481
xor ebx, ebx
mov dword [ecx + 4], ebx
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0x64], ebx
mov eax, edx
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push edx
movzx ecx, byte [ebx + 0x16c]
push edx
and ecx, 7
push ecx
push 0xffffffffffffffff
push ebx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push ebx
push edx
push edx
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx + 0x18]
test edx, edx
je 0x4fd532
test byte [edx + 0x44], 2
je 0x4fd50d
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x14]
mov ecx, dword [edx + 0x18]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x14]
mov edx, dword [ebx + 0x64]
test edx, edx
je 0x4fd500
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x14]
mov dword [edx + 0x64], ecx
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push ecx
push eax
push eax
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp - 0x14]
mov eax, dword [edx + 0x3c]
sub eax, dword [ebp - 0x1fc]
mov dword [edx + 0x68], eax
mov ebx, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x1fc]
mov dword [ebx + 0x104], ecx
push dword [ebp - 0x34]
call fcn.00505200
add esp, 4
mov eax, dword [ebp - 0x14]
call fcn.00504640
mov ecx, dword [ebp - 0x14]
mov eax, dword [ecx + 0x18]
test eax, eax
je 0x4fd5ef
test byte [eax + 0x44], 2
je 0x4fd5c5
mov edx, 0x13
mov dword [eax + 0x38], edx
mov eax, dword [ebp - 0x14]
mov ecx, dword [eax + 0x18]
mov dword [ecx + 0x3c], edx
mov ebx, dword [ebp - 0x14]
mov eax, dword [ebx + 0x64]
test eax, eax
je 0x4fd5b3
xor edx, edx
mov dword [eax + 4], edx
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x64], edx
mov eax, 0x13
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov eax, 0x13
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push ecx
mov eax, 0x13
push eax
push eax
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx + 0x18]
test edx, edx
je 0x4fd671
test byte [edx + 0x44], 2
je 0x4fd64c
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x14]
mov ecx, dword [edx + 0x18]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x14]
mov edx, dword [ebx + 0x64]
test edx, edx
je 0x4fd63f
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x14]
mov dword [edx + 0x64], ecx
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push ecx
push eax
push eax
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x28]
mov eax, dword [ebp - 0x200]
cmp ecx, dword [ebp - 0x1fc]
jne 0x4fd71a
cmp dword [ebp - 0x28], 0
jle 0x4fd72d
movzx ecx, byte [ebp + 0x10]
and ecx, 0x20
mov esi, eax
mov edi, dword [ebp - 0x24]
mov dword [ebp - 0x3ac], ecx
movsx ecx, byte [edi]
movsx edx, byte [esi]
cmp dword [ebp - 0x3ac], 0
je 0x4fd6cd
cmp edx, ecx
jne 0x4fd712
jmp 0x4fd6f6
push ecx
mov dword [ebp - 0x3b4], edx
call fcn.00555620
mov edx, dword [ebp - 0x3b4]
push edx
mov dword [ebp - 0x3b8], eax
call fcn.00555620
add esp, 8
cmp eax, dword [ebp - 0x3b8]
jne 0x4fd712
inc ebx
inc edi
inc esi
cmp ebx, dword [ebp - 0x28]
jl 0x4fd6b8
mov eax, dword [ebp - 0x14]
lea esi, [ebp - 0x750]
movsx edx, byte [ebp - 0x70]
xor ebx, ebx
jmp 0x4faff0
xor ebx, ebx
lea esi, [ebp - 0x750]
mov dword [ebp - 0x3c], 1
mov eax, dword [ebp - 0x14]
movsx edx, byte [ebp - 0x70]
jmp 0x4faff0
test edx, edx
je 0x4fb68f
jmp 0x4fd71a
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx + 0x18]
test edx, edx
je 0x4fd79a
test byte [edx + 0x44], 2
je 0x4fd775
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x14]
mov ecx, dword [edx + 0x18]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x14]
mov edx, dword [ebx + 0x64]
test edx, edx
je 0x4fd768
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x14]
mov dword [edx + 0x64], ecx
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push ecx
push eax
push eax
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx + 0x18]
test edx, edx
je 0x4fd817
test byte [edx + 0x44], 2
je 0x4fd7f2
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x14]
mov ecx, dword [edx + 0x18]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x14]
mov edx, dword [ebx + 0x64]
test edx, edx
je 0x4fd7e5
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x14]
mov dword [edx + 0x64], ecx
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push ecx
push eax
push eax
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push ecx
mov eax, 0x11
push eax
push eax
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov dword [eax + 0x11c], 0x64
mov dword [eax + 0x120], 0xffffffff
add eax, 0x74
push eax
push 0
push 0x190
call fcn.00505140
add esp, 0xc
test eax, eax
je 0x4fd8de
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx + 0x18]
test edx, edx
je 0x4fd8e6
test byte [edx + 0x44], 2
je 0x4fd8b9
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x14]
mov ecx, dword [edx + 0x18]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x14]
mov edx, dword [ebx + 0x64]
test edx, edx
je 0x4fd8ac
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x14]
mov dword [edx + 0x64], ecx
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x14]
jmp 0x4fafb3
push ecx
push eax
push eax
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov dword [ebp - 0x54], esi
movzx edx, byte [ecx + 0x168]
movzx esi, byte [ebp + 0x10]
and edx, 0xfffffffe
shr esi, 7
or edx, esi
mov byte [ecx + 0x168], dl
mov esi, dword [ebp - 0x14]
movzx ecx, byte [ebp + 0x12]
shr ecx, 2
and ecx, 1
movzx edx, byte [esi + 0x168]
add ecx, ecx
and edx, 0xfffffffd
or edx, ecx
movzx ecx, byte [ebp + 0x13]
mov byte [esi + 0x168], dl
mov esi, ecx
shr esi, 3
and esi, 1
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x58], ebx
movzx ebx, byte [eax + 0x168]
lea edx, [esi*4]
and ebx, 0xfffffffb
or ebx, edx
mov byte [eax + 0x168], bl
mov ebx, ecx
mov edx, dword [ebp - 0x14]
shr ebx, 2
and ebx, 1
movzx eax, byte [edx + 0x168]
shl ebx, 3
and eax, 0xfffffff7
or eax, ebx
mov ebx, ecx
mov byte [edx + 0x168], al
mov eax, dword [ebp - 0x14]
shr ebx, 6
and ebx, 1
movzx edx, byte [eax + 0x168]
shl ebx, 4
and edx, 0xffffffef
or edx, ebx
mov byte [eax + 0x168], dl
mov edx, esi
mov ebx, dword [ebp - 0x14]
shl edx, 5
shl esi, 3
movzx eax, byte [ebx + 0x168]
and eax, 0xffffffdf
or eax, edx
mov edx, ecx
mov byte [ebx + 0x168], al
mov eax, dword [ebp - 0x14]
shr edx, 4
and edx, 1
movzx ebx, byte [eax + 0x171]
shl edx, 2
and ebx, 0xfffffffb
or ebx, edx
mov byte [eax + 0x171], bl
mov ebx, dword [ebp - 0x14]
shr ecx, 5
and ecx, 1
movzx edx, byte [ebx + 0x171]
and edx, 0xfffffff7
or edx, esi
mov esi, ecx
mov byte [ebx + 0x171], dl
mov edx, dword [ebp - 0x14]
shl esi, 6
shl ecx, 7
movzx eax, byte [edx + 0x168]
and eax, 0xffffffbf
or eax, esi
mov byte [edx + 0x168], al
mov esi, dword [ebp - 0x14]
movzx ebx, byte [esi + 0x168]
and ebx, 0x7f
or ebx, ecx
mov ecx, edi
mov byte [esi + 0x168], bl
and ecx, 1
mov esi, dword [ebp - 0x14]
mov ebx, edi
shr ebx, 1
and ebx, 1
movzx edx, byte [esi + 0x169]
and edx, 0xfffffffe
or edx, ecx
mov byte [esi + 0x169], dl
mov ecx, dword [ebp - 0x14]
shl ebx, 5
shr edi, 2
movzx edx, byte [ecx + 0x171]
and edi, 3
and edx, 0xffffffdf
add edi, edi
or edx, ebx
mov byte [ecx + 0x171], dl
mov ecx, dword [ebp - 0x14]
mov ebx, dword [ebp - 0x58]
mov esi, dword [ebp - 0x54]
movzx edx, byte [ecx + 0x169]
and edx, 0xfffffff9
or edx, edi
mov edi, 1
push edi
push edi
mov byte [ecx + 0x169], dl
push edi
push dword [ebp - 0x14]
call fcn.004f9160
add esp, 0x10
test eax, eax
je 0x4fdb08
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx + 0x18]
test edx, edx
je 0x4fdb10
test byte [edx + 0x44], 2
je 0x4fdae3
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x14]
mov ecx, dword [edx + 0x18]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x14]
mov edx, dword [ebx + 0x64]
test edx, edx
je 0x4fdad6
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x14]
mov dword [edx + 0x64], ecx
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 0x14]
jmp 0x4fabfa
push ecx
push eax
push eax
push 2
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp - 0x14]
mov dword [ebp - 0x54], esi
movzx esi, byte [ebp + 0x10]
mov dword [ebp - 0x58], ebx
mov ebx, esi
movzx ecx, byte [edx + 0x16c]
and ebx, 1
and ecx, 0xfffffffe
or ecx, ebx
mov byte [edx + 0x16c], cl
mov ecx, esi
mov ebx, dword [ebp - 0x14]
and ecx, 2
shr esi, 7
movzx edx, byte [ebx + 0x16c]
and edx, 0xfffffffd
or edx, ecx
mov byte [ebx + 0x16c], dl
mov ecx, dword [ebp - 0x14]
movzx edx, byte [ecx + 0x168]
and edx, 0xfffffffe
or edx, esi
mov byte [ecx + 0x168], dl
movzx esi, byte [ebp + 0x12]
mov ebx, esi
mov edx, dword [ebp - 0x14]
shr ebx, 2
and ebx, 1
movzx eax, byte [edx + 0x168]
add ebx, ebx
and eax, 0xfffffffd
or eax, ebx
mov byte [edx + 0x168], al
mov ecx, dword [ebp - 0x14]
shr esi, 1
and esi, 0xffffffe0
movzx edx, byte [ecx + 0x16e]
and edx, 0xffffff9f
or edx, esi
mov byte [ecx + 0x16e], dl
mov ecx, dword [ebp - 0x14]
movzx eax, byte [ebp + 0x13]
mov esi, eax
shl esi, 7
movzx edx, byte [ecx + 0x16e]
and edx, 0x7f
or edx, esi
mov esi, eax
shr esi, 3
mov byte [ecx + 0x16e], dl
and esi, 1
mov ecx, dword [ebp - 0x14]
movzx ebx, byte [ecx + 0x168]
lea edx, [esi*4]
and ebx, 0xfffffffb
or ebx, edx
mov byte [ecx + 0x168], bl
mov ebx, eax
mov ecx, dword [ebp - 0x14]
shr ebx, 2
and ebx, 1
movzx edx, byte [ecx + 0x168]
shl ebx, 3
and edx, 0xfffffff7
or edx, ebx
mov byte [ecx + 0x168], dl
mov edx, eax
mov ebx, dword [ebp - 0x14]
shr edx, 6
and edx, 1
movzx ecx, byte [ebx + 0x168]
shl edx, 4
and ecx, 0xffffffef
or ecx, edx
mov byte [ebx + 0x168], cl
mov ecx, esi
mov ebx, dword [ebp - 0x14]
shl ecx, 5
shl esi, 3
movzx edx, byte [ebx + 0x168]
and edx, 0xffffffdf
or edx, ecx
mov byte [ebx + 0x168], dl
mov edx, eax
mov ecx, dword [ebp - 0x14]
shr edx, 4
and edx, 1
movzx ebx, byte [ecx + 0x171]
shl edx, 2
and ebx, 0xfffffffb
or ebx, edx
mov byte [ecx + 0x171], bl
mov edx, dword [ebp - 0x14]
shr eax, 5
and eax, 1
movzx ecx, byte [edx + 0x171]
and ecx, 0xfffffff7
or ecx, esi
mov esi, eax
mov byte [edx + 0x171], cl
mov ecx, dword [ebp - 0x14]
shl esi, 6
shl eax, 7
movzx edx, byte [ecx + 0x168]
and edx, 0xffffffbf
or edx, esi
mov byte [ecx + 0x168], dl
mov edx, edi
mov esi, dword [ebp - 0x14]
and edx, 1
movzx ebx, byte [esi + 0x168]
and ebx, 0x7f
or ebx, eax
lea eax, [ebp - 0x3a4]
mov byte [esi + 0x168], bl
mov ebx, dword [ebp - 0x14]
push eax
mov esi, dword [ebp - 0x54]
movzx ecx, byte [ebx + 0x169]
and ecx, 0xfffffffe
or ecx, edx
mov edx, edi
mov byte [ebx + 0x169], cl
mov ebx, dword [ebp - 0x14]
shr edx, 1
and edx, 1
movzx ecx, byte [ebx + 0x171]
shl edx, 5
and ecx, 0xffffffdf
or ecx, edx
mov byte [ebx + 0x171], cl
lea ebx, [ebp + 0x14]
mov ecx, dword [ebp - 0x14]
shr edi, 2
and edi, 3
movzx edx, byte [ecx + 0x169]
add edi, edi
and edx, 0xfffffff9
or edx, edi
mov byte [ecx + 0x169], dl
lea edx, [ebp - 0x4c]
mov edi, dword [ebp - 0x14]
lea ecx, [ebp + 0x18]
push edx
push ecx
push ebx
mov ebx, dword [ebp - 0x58]
mov dword [edi + 0x60], str.Internal_Formatted_NML_Read
or byte [edi + 0x16a], 0x40
call fcn.00510550
add esp, 0x10
test eax, eax
je 0x4fddbc
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx + 0x18]
test edx, edx
je 0x4fdf8b
test byte [edx + 0x44], 2
je 0x4fdd97
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x14]
mov ecx, dword [edx + 0x18]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x14]
mov edx, dword [ebx + 0x64]
test edx, edx
je 0x4fdd8a
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x14]
mov dword [edx + 0x64], ecx
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp - 0x48]
test edx, edx
mov eax, dword [ebp - 0x40]
jg 0x4fddcb
mov edx, 0
test eax, eax
mov dword [ebp - 0x48], edx
jg 0x4fddd7
mov eax, 0
mov dword [ebp - 0x40], eax
cmp dword [ebp - 0x44], 5
je 0x4fdfbf
mov edx, dword [ebp - 0x14]
mov dword [edx + 0xf8], eax
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x60], str.Internal_Formatted_NML_Read
add eax, 0x38
push eax
push 0
push dword [ebp - 0x48]
call fcn.00505140
add esp, 0xc
test eax, eax
je 0x4fde73
mov ecx, dword [ebp - 0x14]
mov edx, dword [ecx + 0x18]
test edx, edx
je 0x4fdfa5
test byte [edx + 0x44], 2
je 0x4fde4e
mov dword [edx + 0x38], eax
mov edx, dword [ebp - 0x14]
mov ecx, dword [edx + 0x18]
mov dword [ecx + 0x3c], eax
mov ebx, dword [ebp - 0x14]
mov edx, dword [ebx + 0x64]
test edx, edx
je 0x4fde41
xor ecx, ecx
mov dword [edx + 4], ecx
mov edx, dword [ebp - 0x14]
mov dword [edx + 0x64], ecx
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push eax
movzx edx, byte [ecx + 0x16c]
push eax
and edx, 7
push edx
push 0xffffffffffffffff
push ecx
call fcn.0050ffa0
add esp, 0x14
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x4c]
mov dword [edx + 0x70], eax
mov edi, dword [ebp - 0x14]
mov ecx, dword [ebp - 0x48]
mov dword [edi + 0x8c], ecx
mov eax, dword [ebp - 0x14]
push dword [ebp - 0x48]
push dword [eax + 0x70]
push dword [eax + 0x38]
call fcn.005a35a0
add esp, 0xc
mov edx, dword [ebp - 0x14]
mov eax, dword [edx + 0x38]
mov dword [edx + 0x3c], eax
mov edi, dword [ebp - 0x14]
mov ecx, dword [edi + 0x3c]
add ecx, dword [edi + 0xf8]
mov dword [edi + 0x44], ecx
mov edx, dword [ebp - 0x14]
mov eax, dword [edx + 0x3c]
mov dword [edx + 0x48], eax
mov eax, dword [ebp - 0x3a4]
cmp eax, 8
jne 0x4fdefb
mov ecx, dword [ebp - 0x40]
test ecx, ecx
je 0x4fdee0
mov eax, dword [ebp - 0x48]
cdq
idiv ecx
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0xd8], eax
jmp 0x4fdeed
mov eax, dword [ebp - 0x14]
mov dword [eax + 0xd8], 0
mov edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x40]
mov dword [edx + 0xfc], eax
jmp 0x4fdf40
cmp eax, 6
jne 0x4fdf33
mov ecx, dword [ebp - 0x40]
test ecx, ecx
je 0x4fdf18
mov eax, dword [ebp - 0x48]
cdq
idiv ecx
mov ecx, dword [ebp - 0x14]
mov dword [ecx + 0xd8], eax
jmp 0x4fdf25
mov eax, dword [ebp - 0x14]
mov dword [eax + 0xd8], 0
mov edx, dword [ebp - 0x14]
mov eax, dword [ebp - 0x40]
mov dword [edx + 0xfc], eax
jmp 0x4fdf40
mov eax, dword [ebp - 0x14]
mov dword [eax + 0xd8], 1
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x108], 0
mov eax, dword [ebp - 0x14]
test byte [eax + 0x168], 2
je 0x4fdf72
or byte [eax + 0x16e], 2
mov eax, dword [ebp - 0x14]
or byte [eax + 0x16e], 8
mov ecx, dword [ebp - 0x14]
jmp 0x4fabfa
and byte [eax + 0x16e], 0xfd
mov eax, dword [ebp - 0x14]
and byte [eax + 0x16e], 0xf7
mov ecx, dword [ebp - 0x14]
jmp 0x4fabfa
push ecx
push eax
push eax
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
push ecx
push eax
push eax
push 1
call fcn.004d9080
add esp, 0x10
mov ebx, dword [ebp - 8]
mov esi, dword [ebp - 0x10]
mov edi, dword [ebp - 0xc]
mov esp, ebp
pop ebp
ret
mov eax, dword [ebp - 0x14]
mov dword [eax + 0xf8], edx
mov eax, dword [ebp - 0x14]
mov dword [eax + 0x60], str.NML_DECODE
jmp 0x4fddf7
mov dword [ebp - 0x214], edi
jmp 0x4fb4fc