Function at 0x4786b0
Capabilities:
Check for software breakpoints

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x108
mov eax, dword [0x5a9840]
xor eax, ebp
mov dword [ebp - 4], eax
mov eax, dword [ebp + 0xc]
push ebx
mov ebx, dword [ebp + 0x10]
push esi
push edi
mov edi, dword [ebp + 8]
cmp eax, 0xd2
jg 0x479035
je 0x479026
add eax, 0xfffffffd
cmp eax, 0xcc
ja case.0x47a954.40296
movzx eax, byte [eax + 0x47ab68]
jmp dword [eax*4 + 0x47aa28]
mov eax, dword [ebx]
cmp eax, 0xffffffff
jl 0x47a8f4
mov dword [edi + 0x49c], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x6a0], eax
jmp case.0x4793a3.10076
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6c5], al
jmp case.0x4793a3.10076
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6c6], al
jmp case.0x4793a3.10076
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6c3], al
jmp case.0x4793a3.10076
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6bf], al
jmp case.0x4793a3.10076
mov edx, dword [ebx]
test edx, edx
mov ecx, dword [edi + 0x724]
setne al
mov byte [edi + 0x6b9], al
mov eax, ecx
and eax, 0xffffffef
or ecx, 0x10
test edx, edx
cmove ecx, eax
mov dword [edi + 0x724], ecx
jmp case.0x4793a3.10076
mov ecx, dword [ebx]
test ecx, ecx
setne al
mov byte [edi + 0x6c2], al
test ecx, ecx
je 0x4787ab
mov byte [edi + 0x3b9], 5
jmp case.0x4793a3.10076
xor ebx, ebx
cmp byte [edi + 0x3b9], 5
jne 0x47882e
mov byte [edi + 0x3b9], bl
mov eax, ebx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6ba], al
jmp case.0x4793a3.10076
cmp dword [ebx], 0
je 0x4787f3
mov al, 4
mov byte [edi + 0x6c2], 0
mov byte [edi + 0x3b9], al
jmp case.0x4793a3.10076
xor al, al
mov byte [edi + 0x3b9], al
jmp case.0x4793a3.10076
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6ae], al
jmp case.0x4793a3.10076
mov eax, dword [ebx]
test eax, eax
js 0x47a8f4
cmp eax, 0x20c49b
jg 0x47a8f4
imul eax, eax, 0x3e8
mov dword [edi + 0x1ec], eax
xor ebx, ebx
mov eax, ebx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
mov eax, dword [ebx]
cmp eax, 0xffb8
jg 0x47a8f4
cmp eax, 8
jl 0x47a8f4
mov dword [edi + 0x1f8], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
test eax, eax
js 0x47a8f4
cmp eax, 3
jge 0x47a8f4
mov byte [edi + 0x4d5], al
jmp case.0x4793a3.10076
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6b0], al
jmp case.0x4793a3.10076
mov eax, dword [ebx]
test eax, eax
js 0x47a8f4
cmp eax, 4
jge 0x47a8f4
mov byte [edi + 0x3b8], al
jmp case.0x4793a3.10076
mov eax, dword [ebx]
cdq
mov dword [edi + 0x3b0], eax
mov dword [edi + 0x3b4], edx
jmp case.0x4793a3.10076
mov eax, dword [ebx]
cdq
mov esi, eax
mov ebx, edx
cmp ebx, 0xffffffff
jl 0x47a8f4
jg 0x4788d2
cmp esi, 0xffffffff
jb 0x47a8f4
cmp dword [edi + 0x17c], ebx
jg 0x478909
jl 0x4788e4
cmp dword [edi + 0x178], esi
jae 0x478909
mov eax, dword [edi + 0x170]
lea ecx, [edi + 0x618]
cmp eax, dword [ecx]
jne 0x478909
push 0
push ecx
call fcn.00478640
add esp, 8
mov dword [edi + 0x170], 0
mov dword [edi + 0x178], esi
mov dword [edi + 0x17c], ebx
jmp case.0x4793a3.10076
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6c1], al
jmp case.0x4793a3.10076
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6bd], al
jmp case.0x4793a3.10076
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6bc], al
jmp case.0x4793a3.10076
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6be], al
jmp case.0x4793a3.10076
mov eax, dword [ebx]
cmp eax, 0xffffffff
jl 0x47a8f4
mov dword [edi + 0x16c], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
test eax, eax
js 0x47a8f4
and al, 7
mov byte [edi + 0x694], al
jmp case.0x4793a3.10076
cmp dword [ebx], 0
je 0x4787f3
mov al, 1
mov byte [edi + 0x6c2], 0
mov byte [edi + 0x3b9], al
jmp case.0x4793a3.10076
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6aa], al
jmp case.0x4793a3.10076
cmp dword [ebx], 0
je case.0x4793a3.10076
mov byte [edi + 0x3b9], 0
mov byte [edi + 0x6c2], 0
jmp case.0x4793a3.10076
mov ecx, dword [ebx]
mov eax, ecx
sub eax, 0
je 0x478a06
sub eax, 1
je 0x478a06
sub eax, 1
je 0x478a06
test ecx, ecx
js 0x47a8f4
pop edi
pop esi
mov eax, 1
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
mov byte [edi + 0x3ba], cl
jmp case.0x4793a3.10076
mov edx, dword [ebx]
test edx, edx
jne 0x478a22
mov dword [edi + 0x164], edx
jmp case.0x4793a3.10076
mov eax, edx
shr eax, 4
and al, 1
mov byte [edi + 0x996], al
test dl, 0x10
je 0x478a3a
and edx, 0xffffffef
or edx, 2
and edx, 0xffffffdb
xor ecx, ecx
nop
mov eax, 1
shl eax, cl
inc ecx
test edx, eax
jne 0x478a67
cmp ecx, 0x1f
jl 0x478a40
pop edi
pop esi
mov eax, 4
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
mov dword [edi + 0x164], edx
jmp case.0x4793a3.10076
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6af], al
jmp case.0x4793a3.10076
mov eax, dword [ebx]
test eax, eax
js 0x47a8f4
cmp eax, 0xffff
jg 0x47a8f4
mov word [edi + 0x490], ax
jmp case.0x4793a3.10076
mov edx, dword [ebx]
test edx, edx
jne 0x478ab5
mov dword [edi + 0x168], edx
jmp case.0x4793a3.10076
mov eax, edx
shr eax, 4
and al, 1
mov byte [edi + 0x9a6], al
test dl, 0x10
je 0x478acd
and edx, 0xffffffef
or edx, 2
and edx, 0xffffffdb
xor ecx, ecx
mov eax, 1
shl eax, cl
inc ecx
test edx, eax
jne 0x478ae8
cmp ecx, 0x1f
jl 0x478ad2
jmp case.0x47a954.40309
mov dword [edi + 0x168], edx
jmp case.0x4793a3.10076
mov eax, dword [ebx]
test eax, eax
js 0x47a8f4
cmp eax, 7
jg 0x47a8f4
mov byte [edi + 0x492], al
jmp case.0x4793a3.10076
mov eax, dword [ebx]
sub eax, 0
je 0x478b2d
sub eax, 1
jne 0x478c0f
mov byte [edi + 0x6cc], 1
jmp case.0x4793a3.10076
mov byte [edi + 0x6cc], 0
jmp case.0x4793a3.10076
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6b2], al
jmp case.0x4793a3.10076
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6b1], al
jmp case.0x4793a3.10076
mov eax, dword [ebx]
test eax, eax
js 0x47a8f4
cmp eax, 4
jge 0x47a8f4
mov byte [edi + 0x4c0], al
jmp case.0x4793a3.10076
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6b5], al
jmp case.0x4793a3.10076
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6b4], al
jmp case.0x4793a3.10076
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6b6], al
jmp case.0x4793a3.10076
mov eax, dword [ebx]
test eax, eax
js 0x47a8f4
cmp eax, 3
jge 0x47a8f4
mov byte [edi + 0x4c2], al
jmp case.0x4793a3.10076
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6b7], al
jmp case.0x4793a3.10076
mov eax, dword [ebx]
test eax, eax
js 0x47a8f4
cmp eax, 3
jge 0x47a8f4
mov byte [edi + 0x4c1], al
jmp case.0x4793a3.10076
mov eax, dword [ebx]
test eax, eax
js 0x478c0f
cmp eax, 2
jg 0x478c0f
mov byte [edi + 0x4d4], al
jmp case.0x4793a3.10076
pop edi
mov ebx, 0x2b
pop esi
mov eax, ebx
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
mov eax, dword [ebx]
cmp eax, 0xffffffff
jl 0x47a8f4
cdq
mov dword [edi + 0x200], eax
mov dword [edi + 0x204], edx
jmp case.0x4793a3.10076
mov eax, dword [ebx]
test eax, eax
js 0x47a8f4
mov dword [edi + 0x208], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
test eax, eax
js 0x47a8f4
mov dword [edi + 0x20c], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
test eax, eax
js 0x47a8f4
cmp eax, 0xffff
jg 0x47a8f4
mov word [edi + 0x160], ax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
test eax, eax
js 0x47a8f4
cmp eax, 0x20c49b
jg 0x47a8f4
imul eax, eax, 0x3e8
mov dword [edi + 0x1e0], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x1e0], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
test eax, eax
js 0x47a8f4
cmp eax, 0x20c49b
jg 0x47a8f4
imul eax, eax, 0x3e8
mov dword [edi + 0x1e4], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x1e4], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
cmp eax, 0xffffffff
jl 0x47a8f4
cdq
mov dword [edi + 0x220], eax
mov dword [edi + 0x224], edx
jmp case.0x4793a3.10076
lea eax, [edi + 0x580]
push 0
push eax
call fcn.00478640
add esp, 8
mov ebx, 4
mov eax, ebx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6ab], al
jmp case.0x4793a3.10076
mov eax, dword [ebx]
test eax, eax
js 0x47a8f4
cmp eax, 0xffff
jg 0x47a8f4
push eax
call fcn.0048f0b0
add esp, 4
mov word [edi + 0x180], ax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
test eax, eax
js 0x47a8f4
cmp eax, 0xffff
jg 0x47a8f4
push eax
call fcn.0048f0b0
add esp, 4
mov word [edi + 0x182], ax
jmp case.0x4793a3.10076
cmp dword [ebx], 0
push 0
setne al
push edi
mov byte [edi + 0x3f5], al
call fcn.004864c0
add esp, 8
jmp case.0x4793a3.10076
test byte [ebx], 3
push 0
setne al
push edi
mov byte [edi + 0x3f6], al
call fcn.004864c0
add esp, 8
jmp case.0x4793a3.10076
cmp dword [edi + 0x8bc], 0
jne 0x47a8f4
mov eax, dword [ebx]
cmp eax, 0xa00000
jle 0x478dfe
mov eax, 0xa00000
mov dword [edi + 0x4a0], eax
jmp case.0x4793a3.10076
cmp eax, 1
jge 0x478e13
mov eax, 0x4000
mov dword [edi + 0x4a0], eax
jmp case.0x4793a3.10076
mov ecx, 0x400
cmp eax, ecx
cmovl eax, ecx
mov dword [edi + 0x4a0], eax
jmp case.0x4793a3.10076
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6c7], al
jmp case.0x4793a3.10076
mov eax, dword [ebx]
test eax, eax
js 0x47a8f4
cdq
mov dword [edi + 0x4b8], eax
mov dword [edi + 0x4bc], edx
jmp case.0x4793a3.10076
mov eax, dword [ebx]
test eax, eax
js 0x47a8f4
cmp eax, 2
jg 0x47a8f4
mov byte [edi + 0x4b0], al
jmp case.0x4793a3.10076
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6c8], al
jmp case.0x4793a3.10076
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6c9], al
jmp case.0x4793a3.10076
mov eax, dword [ebx]
cmp eax, 2
jg 0x47a8f4
mov byte [edi + 0x6a5], al
jmp case.0x4793a3.10076
cmp dword [ebx], 0
setne al
mov byte [edi + 0x3f8], al
mov byte [edi + 0x460], al
jmp case.0x4793a3.10076
cmp dword [ebx], 0
sete al
mov byte [edi + 0x6ca], al
jmp case.0x4793a3.10076
cmp dword [ebx], 0
sete al
mov byte [edi + 0x6cb], al
jmp case.0x4793a3.10076
mov eax, dword [ebx]
test eax, eax
js 0x47a8f4
cmp eax, 0x1ff
jg 0x47a8f4
mov dword [edi + 0x4d8], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x63c], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x640], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x644], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
dec eax
cmp eax, 0xa
ja case.default.0x478f37
jmp dword [eax*4 + 0x47ac38]
mov eax, 1
mov dword [edi + 0x64c], eax
jmp case.0x4793a3.10076
mov eax, 2
mov dword [edi + 0x64c], eax
jmp case.0x4793a3.10076
mov eax, 3
mov dword [edi + 0x64c], eax
jmp case.0x4793a3.10076
mov eax, 4
mov dword [edi + 0x64c], eax
jmp case.0x4793a3.10076
mov eax, 5
mov dword [edi + 0x64c], eax
jmp case.0x4793a3.10076
mov eax, 6
mov dword [edi + 0x64c], eax
jmp case.0x4793a3.10076
mov eax, 7
mov dword [edi + 0x64c], eax
jmp case.0x4793a3.10076
mov eax, 8
mov dword [edi + 0x64c], eax
jmp case.0x4793a3.10076
mov eax, 9
mov dword [edi + 0x64c], eax
jmp case.0x4793a3.10076
mov eax, 0xa
mov dword [edi + 0x64c], eax
jmp case.0x4793a3.10076
mov eax, 0xb
mov dword [edi + 0x64c], eax
jmp case.0x4793a3.10076
xor eax, eax
mov dword [edi + 0x64c], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0xc78], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0xc7c], eax
jmp case.0x4793a3.10076
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6b8], al
jmp case.0x4793a3.10076
mov al, byte [ebx]
and al, 3
mov byte [edi + 0x664], al
jmp case.0x4793a3.10076
cmp eax, 0x2711
jg 0x47937b
je 0x47936e
add eax, 0xffffff2c
cmp eax, 0x70
ja case.0x47a954.40296
movzx eax, byte [eax + 0x47acfc]
jmp dword [eax*4 + 0x47ac64]
mov eax, dword [ebx]
cmp eax, 0xffffffff
jl 0x47a8f4
mov dword [edi + 0x498], eax
jmp case.0x4793a3.10076
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6bb], al
jmp case.0x4793a3.10076
mov eax, dword [ebx]
test eax, eax
js 0x47a8f4
jmp 0x478826
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6a8], al
jmp case.0x4793a3.10076
mov al, byte [ebx]
and al, 1
mov byte [edi + 0x6a9], al
jmp case.0x4793a3.10076
mov eax, dword [ebx]
test eax, eax
js 0x47a8f4
mov dword [edi + 0x670], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
cmp eax, 1
jg 0x47a8f4
test eax, eax
setne al
mov byte [edi + 0x6dc], al
jmp case.0x4793a3.10076
mov al, byte [ebx]
and al, 1
mov byte [edi + 0x6a6], al
jmp case.0x4793a3.10076
mov al, byte [ebx]
mov byte [edi + 0x493], al
and al, 0xfa
movzx ebx, al
neg ebx
pop edi
sbb ebx, ebx
and ebx, 4
pop esi
mov eax, ebx
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
mov eax, dword [ebx]
mov dword [edi + 0x4c4], eax
jmp case.0x4793a3.10076
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6d5], al
jmp case.0x4793a3.10076
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6d9], al
jmp case.0x4793a3.10076
cmp dword [ebx], 0
push 1
setne al
push edi
mov byte [edi + 0x45d], al
call fcn.004864c0
add esp, 8
jmp case.0x4793a3.10076
test byte [ebx], 3
setne al
mov byte [edi + 0x6da], al
jmp case.0x4793a3.10076
test byte [ebx], 3
push 1
setne al
push edi
mov byte [edi + 0x45e], al
call fcn.004864c0
add esp, 8
jmp case.0x4793a3.10076
mov eax, dword [ebx]
cmp eax, 0x200000
jle 0x4791a6
mov eax, 0x200000
jmp 0x4791b0
mov ecx, 0x4000
cmp eax, ecx
cmovl eax, ecx
mov dword [edi + 0x4a4], eax
push dword [edi + 0x8c0]
call dword [0x5a9350]
add esp, 4
mov dword [edi + 0x8c0], 0
jmp case.0x4793a3.10076
cmp dword [ebx], 0
setne al
mov byte [edi + 0x69c], al
jmp case.0x4793a3.10076
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6cd], al
jmp case.0x4793a3.10076
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6ce], al
jmp case.0x4793a3.10076
mov eax, dword [ebx]
test eax, eax
js 0x47a8f4
mov dword [edi + 0x668], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
test eax, eax
js 0x47a8f4
mov dword [edi + 0x66c], eax
jmp case.0x4793a3.10076
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6d0], al
jmp case.0x4793a3.10076
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6d1], al
jmp case.0x4793a3.10076
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6d2], al
jmp case.0x4793a3.10076
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6d3], al
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x1e8], eax
jmp case.0x4793a3.10076
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6d4], al
jmp case.0x4793a3.10076
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6d7], al
jmp case.0x4793a3.10076
mov eax, dword [ebx]
test eax, eax
js 0x47a8f4
mov dword [edi + 0x67c], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
test eax, eax
js 0x47a8f4
mov dword [edi + 0x1f0], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
test eax, eax
js 0x47a8f4
mov dword [edi + 0x1f4], eax
jmp case.0x4793a3.10076
add edi, 0x6e4
test byte [ebx], 1
je 0x47930b
cmp dword [edi], 0
jne case.0x4793a3.10076
call fcn.00490690
mov dword [edi], eax
test eax, eax
je 0x4796c0
jmp case.0x4793a3.10076
push edi
call fcn.00490640
add esp, 4
jmp case.0x4793a3.10076
mov eax, dword [edi + 0x6e8]
test eax, eax
jne 0x479336
call fcn.0048f700
mov dword [edi + 0x6e8], eax
test eax, eax
je 0x4796c0
mov ecx, dword [ebx]
test ecx, ecx
je 0x47a8f4
push ecx
push eax
call fcn.0048f6f0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
cmp dword [ebx], 0
setne al
mov byte [edi + 0x6ad], al
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x154], eax
jmp case.0x4793a3.10076
cmp eax, 0x27f4
jg 0x47a089
je 0x47a07c
add eax, 0xffffd8ee
cmp eax, 0xde
ja case.0x47a954.40296
movzx eax, byte [eax + 0x47ae90]
jmp dword [eax*4 + 0x47ad70]
push dword [ebx]
lea eax, [edi + 0x55c]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x52c]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
mov edx, dword [ebx]
test edx, edx
je 0x4794c6
mov ecx, dword [edi + 0x178]
mov eax, ecx
mov esi, dword [edi + 0x17c]
and eax, esi
cmp eax, 0xffffffff
je 0x4794c6
test esi, esi
jl 0x479495
jg 0x479495
test ecx, ecx
jb 0x479495
test esi, esi
jg 0x479495
jl 0x47942a
cmp ecx, 0xffffffff
ja 0x479495
push ecx
push edx
call fcn.0047ccb0
lea esi, [edi + 0x618]
mov ebx, eax
push 0
push esi
call fcn.00478640
add esp, 0x10
test ebx, ebx
jne 0x47946f
mov eax, dword [esi]
mov ebx, 0x1b
mov dword [edi + 0x170], eax
mov eax, ebx
mov byte [edi + 0x3b9], 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
mov dword [esi], ebx
xor ebx, ebx
mov eax, dword [esi]
mov dword [edi + 0x170], eax
mov eax, ebx
mov byte [edi + 0x3b9], 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
mov eax, dword [edi + 0x618]
lea esi, [edi + 0x618]
mov dword [edi + 0x170], eax
mov ebx, 0x1b
mov byte [edi + 0x3b9], 1
mov eax, ebx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push edx
lea esi, [edi + 0x618]
push esi
call fcn.00478640
add esp, 8
mov ebx, eax
mov eax, dword [esi]
mov dword [edi + 0x170], eax
mov eax, ebx
mov byte [edi + 0x3b9], 1
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
mov eax, dword [ebx]
mov dword [edi + 0x170], eax
lea eax, [edi + 0x618]
push 0
push eax
call fcn.00478640
add esp, 8
mov byte [edi + 0x3b9], 1
jmp case.0x4793a3.10076
mov eax, dword [ebx]
test eax, eax
je 0x479564
cmp byte [eax], 0
jne 0x479564
lea eax, [ebp - 0x104]
push 0x100
push eax
call fcn.004913f0
lea eax, [ebp - 0x104]
push eax
lea eax, [edi + 0x500]
push eax
call fcn.00478640
add esp, 0x10
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push eax
lea eax, [edi + 0x500]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
mov eax, dword [ebx]
push dword [edi + 0xcec]
mov dword [edi + 0x22c], eax
mov byte [edi + 0x3b9], 2
mov byte [edi + 0x6c2], 0
call fcn.00483f00
push dword [edi + 0xcec]
call dword [0x5a9350]
add esp, 8
mov dword [edi + 0xcec], 0
mov dword [edi + 0xce8], 0
jmp case.0x4793a3.10076
cmp byte [edi + 0xd9d], 0
je 0x4795f9
push dword [edi + 0xce0]
call dword [0x5a9350]
add esp, 4
mov dword [edi + 0xce0], 0
mov byte [edi + 0xd9d], 0
push dword [ebx]
lea esi, [edi + 0x53c]
push esi
call fcn.00478640
add esp, 8
mov ebx, eax
mov eax, dword [esi]
mov dword [edi + 0xce0], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x56c]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x4ec]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
mov edx, dword [ebx]
test edx, edx
je 0x4796e1
mov ecx, edx
lea esi, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x479680
sub ecx, esi
cmp ecx, 0x7a1200
ja 0x47a8f4
push edx
push dword [edi + 0xd4c]
call fcn.0048efa0
add esp, 8
test eax, eax
jne 0x4796d6
push dword [edi + 0xd4c]
call fcn.0048efe0
add esp, 4
mov dword [edi + 0xd4c], 0
pop edi
pop esi
mov eax, 0x1b
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
mov dword [edi + 0xd4c], eax
jmp case.0x4793a3.10076
push dword [edi + 0xd4c]
call fcn.0048efe0
mov eax, dword [edi + 0x84]
add esp, 4
mov dword [edi + 0xd4c], 0
test eax, eax
je 0x479709
cmp dword [eax + 0x78], 0
jne 0x479722
push dword [edi + 0x6e0]
call fcn.00481890
push dword [edi + 0x6e0]
call fcn.00481860
add esp, 8
mov dword [edi + 0x6e0], 0
jmp case.0x4793a3.10076
push dword [ebx]
lea eax, [edi + 0x4f0]
push eax
call fcn.00478640
mov ebx, eax
movzx eax, byte [edi + 0x6aa]
push eax
push dword [edi + 0x6e0]
push 0
push edi
call fcn.00481b30
add esp, 0x18
mov dword [edi + 0x6e0], eax
test eax, eax
mov ecx, 0x1b
cmove ebx, ecx
pop edi
pop esi
mov eax, ebx
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
mov esi, dword [ebx]
test esi, esi
je case.0x4793a3.10076
push 0x57419c
push esi
call fcn.00491230
add esp, 8
test eax, eax
je 0x4797be
push 2
push 2
push edi
call fcn.00491700
push dword [edi + 0x6e0]
call fcn.00481890
push 2
push edi
call fcn.00491740
add esp, 0x18
jmp case.0x4793a3.10076
push str.SESS
push esi
call fcn.00491230
add esp, 8
test eax, eax
je 0x4797f5
push 2
push 2
push edi
call fcn.00491700
push dword [edi + 0x6e0]
call fcn.004818d0
push 2
push edi
call fcn.00491740
add esp, 0x18
jmp case.0x4793a3.10076
push str.FLUSH
push esi
call fcn.00491230
add esp, 8
test eax, eax
je 0x479817
push 0
push edi
call fcn.00481dc0
add esp, 8
jmp case.0x4793a3.10076
push str.RELOAD
push esi
call fcn.00491230
add esp, 8
test eax, eax
je 0x479837
push edi
call fcn.00481d50
add esp, 4
jmp case.0x4793a3.10076
cmp dword [edi + 0x6e0], 0
jne 0x479855
push 1
push 0
push 0
push edi
call fcn.00481b30
add esp, 0x10
mov dword [edi + 0x6e0], eax
mov ecx, esi
lea edx, [ecx + 1]
nop word [eax + eax]
mov al, byte [ecx]
inc ecx
test al, al
jne 0x479860
sub ecx, edx
cmp ecx, 0x7a1200
ja 0x47a8f4
push esi
call dword [0x5a9358]
mov esi, eax
add esp, 4
test esi, esi
je 0x4798e6
cmp dword [edi + 0x6e0], 0
je 0x4798e6
push 2
push 2
push edi
call fcn.00491700
push 0xb
push str.Set_Cookie:
push esi
call fcn.00491260
add esp, 0x18
lea ecx, [esi + 0xb]
test eax, eax
jne 0x4798b1
mov ecx, esi
push 1
push 0
push 0
test eax, eax
push ecx
setne al
push 0
movzx eax, al
push eax
push dword [edi + 0x6e0]
push edi
call fcn.00480a10
push 2
push edi
call fcn.00491740
push esi
call dword [0x5a9350]
add esp, 0x2c
jmp case.0x4793a3.10076
push esi
mov ebx, 0x1b
call dword [0x5a9350]
add esp, 4
mov eax, ebx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
mov eax, dword [ebx]
mov dword [edi + 0x4ac], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x228], eax
jmp case.0x4793a3.10076
push dword [ebx]
lea eax, [edi + 0x4f4]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x530]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
mov eax, dword [ebx]
mov dword [edi + 0x15c], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x150], eax
jmp case.0x4793a3.10076
push dword [ebx]
lea esi, [edi + 0x50c]
push esi
call fcn.00478640
add esp, 8
mov ebx, eax
cmp dword [esi], 0
setne al
mov byte [edi + 0x6b3], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x504]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x508]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea esi, [edi + 0x528]
push esi
call fcn.00478640
add esp, 8
mov ebx, eax
cmp dword [esi], 0
setne al
mov byte [edi + 0x6c4], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
mov eax, dword [ebx]
mov dword [edi + 0x4cc], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x4d0], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x4c8], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x158], eax
jmp case.0x4793a3.10076
cmp byte [edi + 0xd9c], 0
je 0x479a8d
push dword [edi + 0xcdc]
call dword [0x5a9350]
add esp, 4
mov dword [edi + 0xcdc], 0
mov byte [edi + 0xd9c], 0
push dword [ebx]
lea esi, [edi + 0x540]
push esi
call fcn.00478640
add esp, 8
mov ebx, eax
mov eax, dword [esi]
mov dword [edi + 0xcdc], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
lea eax, [edi + 0x588]
push eax
lea eax, [edi + 0x584]
push eax
push dword [ebx]
call fcn.0047b2c0
add esp, 0xc
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x584]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x588]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x58c]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x5dc]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
mov eax, dword [ebx]
mov dword [edi + 0x3a4], eax
mov dword [edi + 0xce4], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x1d8], eax
jmp case.0x4793a3.10076
lea eax, [edi + 0x594]
push eax
lea eax, [edi + 0x590]
push eax
push dword [ebx]
call fcn.0047b2c0
add esp, 0xc
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x590]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x594]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x598]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x538]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
mov eax, dword [ebx]
mov dword [edi + 0x14c], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x148], eax
test eax, eax
jne case.0x4793a3.10076
push 2
call fcn.00529e20
add esp, 4
mov dword [edi + 0x148], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x1c4], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x1dc], eax
jmp case.0x4793a3.10076
push dword [ebx]
lea eax, [edi + 0x4dc]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x4e4]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x510]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x520]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x518]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
mov eax, dword [ebx]
test eax, eax
je case.0x4793a3.10076
cmp byte [eax], 0
je case.0x4793a3.10076
push eax
lea eax, [edi + 0x580]
push eax
call fcn.00478640
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x47882e
pop edi
mov ebx, 4
pop esi
mov eax, ebx
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x4fc]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x54c]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x570]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x578]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
mov eax, dword [ebx]
mov dword [edi + 0x3a0], eax
jmp case.0x4793a3.10076
mov eax, dword [edi + 0x84]
mov esi, dword [ebx]
test eax, eax
je 0x479eb4
push 2
push 1
push edi
call fcn.00491700
add esp, 0xc
cmp dword [edi + 0x78], 2
jne 0x479e60
mov dword [edi + 0x74], 0
mov dword [edi + 0x78], 0
mov ecx, dword [edi + 0x84]
mov eax, dword [ecx + 0x78]
cmp eax, dword [edi + 0x6e0]
jne 0x479e7b
mov dword [edi + 0x6e0], 0
mov eax, dword [ecx + 0x7c]
cmp eax, dword [edi + 0x6e4]
jne 0x479e90
mov dword [edi + 0x6e4], 0
mov ecx, dword [ecx + 8]
mov eax, dword [edi + 0x84]
dec ecx
push 1
push edi
mov dword [eax + 8], ecx
call fcn.00491740
add esp, 8
mov dword [edi + 0x84], 0
xor eax, eax
test esi, esi
je case.0x4793a3.10076
cmp dword [esi], 0x7e117a1e
jne 0x479ecc
mov dword [edi + 0x84], esi
jmp 0x479ed4
test eax, eax
je case.0x4793a3.10076
push 2
push 1
push edi
call fcn.00491700
mov eax, dword [edi + 0x84]
add esp, 0xc
mov ecx, dword [eax + 8]
mov eax, dword [edi + 0x84]
inc ecx
mov dword [eax + 8], ecx
mov ecx, dword [edi + 0x84]
test byte [ecx + 4], 8
je 0x479f0d
lea eax, [ecx + 0x60]
mov dword [edi + 0x74], eax
mov dword [edi + 0x78], 2
cmp dword [ecx + 0x78], 0
je 0x479f30
push dword [edi + 0x6e0]
call fcn.00481860
mov ecx, dword [edi + 0x84]
add esp, 4
mov eax, dword [ecx + 0x78]
mov dword [edi + 0x6e0], eax
cmp dword [ecx + 0x7c], 0
je 0x479f50
lea esi, [edi + 0x6e4]
push esi
call fcn.00490640
mov eax, dword [edi + 0x84]
add esp, 4
mov eax, dword [eax + 0x7c]
mov dword [esi], eax
push 1
push edi
call fcn.00491740
add esp, 8
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x4a8], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x1a8], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x1b0], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x1b8], eax
jmp case.0x4793a3.10076
push dword [ebx]
lea eax, [edi + 0x5c4]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x5c8]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
mov eax, dword [ebx]
mov dword [edi + 0x698], eax
jmp case.0x4793a3.10076
push dword [ebx]
lea eax, [edi + 0x59c]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x5a0]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x5a4]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
mov eax, dword [ebx]
mov dword [edi + 0x648], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x660], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x65c], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x48c], eax
jmp case.0x4793a3.10076
cmp eax, 0x4e2b
jg 0x47a64f
je 0x47a620
add eax, 0xffffd80a
cmp eax, 0x5d
ja case.0x47a954.40296
movzx eax, byte [eax + 0x47b000]
jmp dword [eax*4 + 0x47af70]
push dword [ebx]
lea eax, [edi + 0x560]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x5e4]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea esi, [edi + 0x60c]
push esi
call fcn.00478640
add esp, 8
mov ebx, eax
cmp dword [esi], 0
je 0x47882e
mov dword [edi + 0x164], 0x80
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push 0
push dword [ebx]
lea eax, [edi + 0x230]
push eax
call fcn.00484580
mov ebx, eax
add esp, 0xc
test ebx, ebx
jne 0x47882e
push dword [edi + 0xcec]
mov byte [edi + 0x3b9], 3
mov byte [edi + 0x6c2], al
call fcn.00483f00
push dword [edi + 0xcec]
call dword [0x5a9350]
add esp, 8
mov dword [edi + 0xcec], ebx
mov dword [edi + 0xce8], ebx
mov eax, ebx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x534]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x5bc]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x5c0]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
mov eax, dword [ebx]
mov dword [edi + 0x688], eax
jmp case.0x4793a3.10076
push dword [ebx]
lea eax, [edi + 0x4e0]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x4e8]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x514]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x524]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x51c]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x610]
push eax
call fcn.00478640
add esp, 8
mov byte [edi + 0x6d5], 1
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x550]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x574]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x57c]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
mov eax, dword [ebx]
mov dword [edi + 0x678], eax
jmp case.0x4793a3.10076
lea eax, [ebp - 0x108]
push eax
push dword [ebx]
call fcn.0047b210
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x478830
mov eax, dword [ebp - 0x108]
mov dword [edi + 0x640], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
lea eax, [ebp - 0x108]
push eax
push dword [ebx]
call fcn.0047b210
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x478830
mov eax, dword [ebp - 0x108]
mov dword [edi + 0x644], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x4f8]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x5f4]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
mov byte [edi + 0x6d6], 0
push dword [ebx]
lea eax, [edi + 0x5e0]
push eax
call fcn.00478640
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
mov byte [edi + 0x6d6], 1
jmp 0x47a42c
mov eax, dword [ebx]
test eax, eax
je case.0x47a954.40309
cmp dword [eax], 0xc0dedbad
je case.0x47a954.40309
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x3a8], eax
jmp case.0x4793a3.10076
push dword [ebx]
lea esi, [edi + 0x5e8]
push esi
call fcn.00478640
add esp, 8
mov ebx, eax
cmp dword [esi], 0
setne al
mov byte [edi + 0x6d8], al
mov eax, ebx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
mov eax, dword [ebx]
mov dword [edi + 0x68c], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x1cc], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x1d4], eax
jmp case.0x4793a3.10076
cmp dword [edi + 0x6e4], 0
lea esi, [edi + 0x6e4]
jne 0x47a4f8
call fcn.00490690
mov dword [esi], eax
test eax, eax
je 0x4796c0
mov eax, dword [ebx]
mov dword [ebp - 0x108], eax
test eax, eax
je 0x47a577
push eax
lea eax, [edi + 0x5f0]
push eax
call fcn.00478640
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x478830
push dword [ebp - 0x108]
push dword [edi + 0x8b8]
call fcn.0048efa0
add esp, 8
test eax, eax
jne 0x47a55e
push dword [edi + 0x8b8]
call fcn.0048efe0
add esp, 4
mov dword [edi + 0x8b8], ebx
lea eax, [ebx + 0x1b]
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
mov dword [edi + 0x8b8], eax
mov eax, ebx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [edi + 0x8b8]
call fcn.0048efe0
mov dword [edi + 0x8b8], 0
add esp, 4
mov eax, dword [edi + 0x84]
test eax, eax
je 0x47a5a3
cmp dword [eax + 0x7c], 0
jne case.0x4793a3.10076
push esi
call fcn.00490640
add esp, 4
jmp case.0x4793a3.10076
cmp dword [edi + 0x6e8], 0
jne 0x47a5cd
call fcn.0048f700
mov dword [edi + 0x6e8], eax
test eax, eax
je 0x4796c0
mov esi, dword [ebx]
lea eax, [edi + 0x5ec]
push esi
push eax
call fcn.00478640
mov ebx, eax
add esp, 8
test ebx, ebx
jne 0x478830
test esi, esi
je 0x47882e
push esi
push dword [edi + 0x6e8]
call fcn.0048f730
add esp, 8
mov eax, ebx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
mov eax, dword [ebx]
mov dword [edi + 0x1c0], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
xor ebx, ebx
mov dword [edi + 0x184], eax
test eax, eax
jne 0x47882e
mov dword [edi + 0x184], fcn.0052b5df
mov eax, ebx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
cmp eax, 0x4f30
jg 0x47a795
je 0x47a788
add eax, 0xffffb1d4
cmp eax, 0xcf
ja case.0x47a954.40296
movzx eax, byte [eax + 0x47b0a0]
jmp dword [eax*4 + 0x47b060]
mov eax, dword [ebx]
test eax, eax
mov dword [edi + 0x194], eax
setne al
mov byte [edi + 0x87c], al
jmp case.0x4793a3.10076
mov eax, dword [ebx]
test eax, eax
mov dword [edi + 0x198], eax
setne al
mov byte [edi + 0x87c], al
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x19c], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x188], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
xor ebx, ebx
mov dword [edi + 0x190], eax
test eax, eax
jne 0x47a6f9
mov byte [edi + 0x6a7], bl
mov eax, ebx
mov dword [edi + 0x190], fcn.0052ad02
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
mov byte [edi + 0x6a7], 1
mov eax, ebx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
mov eax, dword [ebx]
mov dword [edi + 0x174], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x1a0], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x1a4], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x1ac], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x1b4], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x18c], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x650], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x654], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x658], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x674], eax
jmp case.0x4793a3.10076
cmp eax, 0x75c1
jg 0x47a8b2
je 0x47a892
cmp eax, 0x75a3
jg 0x47a829
je 0x47a7ff
add eax, 0xffffb0c5
cmp eax, 0x1d
ja case.0x47a954.40296
movzx eax, byte [eax + 0x47b184]
jmp dword [eax*4 + 0x47b170]
mov eax, dword [ebx]
mov dword [edi + 0x690], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x1c8], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x1d0], eax
jmp case.0x4793a3.10076
mov eax, dword [ebx]
mov dword [edi + 0x1bc], eax
jmp case.0x4793a3.10076
mov ecx, dword [ebx + 4]
mov eax, dword [ebx]
cmp ecx, 0xffffffff
jl 0x47a8f4
jg 0x47a818
cmp eax, 0xffffffff
jb 0x47a8f4
mov dword [edi + 0x200], eax
mov dword [edi + 0x204], ecx
jmp case.0x4793a3.10076
sub eax, 0x75a4
je 0x47a870
sub eax, 1
je 0x47a848
sub eax, 3
jne case.0x47a954.40296
mov esi, dword [ebx]
mov ebx, dword [ebx + 4]
jmp 0x4788be
mov ecx, dword [ebx + 4]
mov eax, dword [ebx]
test ecx, ecx
jl 0x47a8f4
jg 0x47a85f
test eax, eax
jb 0x47a8f4
mov dword [edi + 0x4b8], eax
mov dword [edi + 0x4bc], ecx
jmp case.0x4793a3.10076
mov ecx, dword [ebx + 4]
mov eax, dword [ebx]
cmp ecx, 0xffffffff
jl 0x47a8f4
jg 0x47a881
cmp eax, 0xffffffff
jb 0x47a8f4
mov dword [edi + 0x220], eax
mov dword [edi + 0x224], ecx
jmp case.0x4793a3.10076
mov ecx, dword [ebx + 4]
mov eax, dword [ebx]
test ecx, ecx
jl 0x47a8f4
jg 0x47a8a1
test eax, eax
jb 0x47a8f4
mov dword [edi + 0x210], eax
mov dword [edi + 0x214], ecx
jmp case.0x4793a3.10076
cmp eax, 0x9d63
jg 0x47a93f
je 0x47a91b
sub eax, 0x75c2
je 0x47a8e5
sub eax, 0x7c
jne case.0x47a954.40296
mov eax, dword [ebx]
mov ecx, dword [ebx + 4]
mov dword [edi + 0x3b0], eax
mov dword [edi + 0x3b4], ecx
jmp case.0x4793a3.10076
mov ecx, dword [ebx + 4]
mov eax, dword [ebx]
test ecx, ecx
jg 0x47a90a
jl 0x47a8f4
test eax, eax
jae 0x47a90a
pop edi
pop esi
mov eax, 0x2b
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
mov dword [edi + 0x218], eax
mov dword [edi + 0x21c], ecx
jmp case.0x4793a3.10076
push dword [ebx]
lea eax, [edi + 0x61c]
push eax
call fcn.004785a0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
add eax, 0xffff629c
cmp eax, 0x12
ja case.0x47a954.40296
movzx eax, byte [eax + 0x47b1c0]
jmp dword [eax*4 + 0x47b1a4]
push dword [ebx]
lea eax, [edi + 0x620]
push eax
call fcn.004785a0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x624]
push eax
call fcn.004785a0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x628]
push eax
call fcn.004785a0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x62c]
push eax
call fcn.004785a0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
push dword [ebx]
lea eax, [edi + 0x630]
push eax
call fcn.004785a0
add esp, 8
mov ebx, eax
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.004ef253
mov esp, ebp
pop ebp
ret
mov ecx, dword [ebp - 4]
mov ebx, 0x30
pop edi
pop esi
mov eax, ebx
xor ecx, ebp
pop ebx
call fcn.004ef253
mov esp, ebp
pop ebp
ret