Function at 0x817f60
Capabilities:
Check http status code
Get disk information
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x200
mov esi, esp
mov dword [esi + 0x1e8], ebp
mov edi, ecx
nop
mov ebx, dword [ebp + 8]
mov dword [esi + 0x1ec], esp
mov dword [esi + 0x1f8], 0xffffffff
lea eax, [esi + 0x1f0]
mov dword [esi + 0x1f4], 0x826c10
mov ecx, dword fs:[0]
mov dword [esi + 0x1f0], ecx
mov dword fs:[0], eax
call fcn.008200d0
mov dword [esi + 0x10], eax
mov eax, dword [edi + 0x2c4]
lea ecx, [ebx + ebx*2]
mov edx, dword [eax + ecx*4]
mov dword [esi + 0x28], ecx
mov ecx, dword [eax + ecx*4 + 4]
mov eax, ecx
sub eax, edx
sar eax, 6
imul eax, eax, 0xaaaaaaab
mov dword [esi + 8], edi
and dword [edi + 0x70], 0xfffffbff
mov dword [esi + 0xf0], ecx
mov dword [esi + 0xf4], edx
sub ecx, edx
mov dword [esi + 0xc8], ecx
mov dword [esi + 0x50], 0
mov dword [esi + 0x54], 0
mov dword [esi + 0x58], 0
nop
mov dword [esi + 0x20], eax
je 0x818069
cmp eax, 0x40000000
jae 0x819e5b
lea edi, [eax*4]
cmp eax, 0x400
jb 0x818043
lea eax, [edi + 0x23]
push eax
call fcn.0091d7fd
add esp, 4
mov ecx, eax
add eax, 0x23
and eax, 0xffffffe0
mov dword [eax - 4], ecx
jmp 0x81804d
nop
push edi
call fcn.0091d7fd
add esp, 4
nop
mov dword [esi + 0x50], eax
mov ecx, dword [esi + 0x20]
lea ebx, [eax + ecx*4]
mov dword [esi + 0x58], ebx
push edi
push 0
push eax
call fcn.009350b0
add esp, 0xc
mov dword [esi + 0x54], ebx
nop
mov eax, dword [esi + 0x50]
mov ecx, dword [0xa8c698]
add ecx, dword [esi + 0x54]
sub ecx, eax
test ecx, ecx
jle 0x818098
xor ecx, ecx
nop
nop
mov dword [eax + ecx*4], 0
inc ecx
mov eax, dword [esi + 0x50]
mov edx, dword [esi + 0x54]
sub edx, eax
sar edx, 2
cmp ecx, edx
jl 0x818080
mov ecx, 0x28
mov edi, dword [esi + 0x20]
mov eax, edi
mul ecx
mov ecx, 0xffffffff
cmovno ecx, eax
mov dword [esi + 0xec], ecx
cmp edi, 2
mov eax, 1
cmovge eax, edi
mov dword [esi + 0xe8], eax
and eax, 0xfffffe
mov dword [esi + 0xb4], eax
mov eax, 0xffffb510
sub eax, dword [esi + 0x10]
mov dword [esi + 0x1c], eax
mov dword [esi + 0x1f8], 0xe
mov eax, dword [esi + 8]
lea ecx, [eax + 0x300]
mov dword [esi + 0xc4], ecx
add eax, 0x304
mov dword [esi + 0xc0], eax
nop
mov dword [esi + 0x5c], 0
nop
mov dword [esi + 0x1f8], 0xe
mov ecx, dword [esi + 8]
push 0
push dword [ebp + 8]
call fcn.007e6290
xor edx, edx
jmp 0x81813c
mov eax, 0xc8
nop
mov edx, dword [esi + 4]
mov dword [edx + 0xa8], eax
nop
mov dword [edx + 8], 5
mov edx, dword [esi + 0xc]
inc edx
cmp edx, dword [esi + 0x20]
jge 0x818280
nop
mov eax, dword [esi + 8]
mov eax, dword [eax + 0x2c4]
mov ecx, dword [esi + 0x28]
mov eax, dword [eax + ecx*4]
mov dword [esi + 0xc], edx
lea ecx, [edx + edx*2]
shl ecx, 6
mov edx, dword [eax + ecx + 8]
and edx, 0x17
cmp edx, 5
lea edx, [eax + ecx]
lea edi, [eax + ecx + 0x90]
nop
mov dword [esi + 4], edx
jne 0x8181e0
mov eax, 1
mov dword [esi], 0
mov dword [esi + 0x14], edi
nop word cs:[eax + eax]
nop
mov dword [edx + 8], eax
mov ecx, dword [edx + 0x90]
push dword [edx + 0x1c]
push dword [edx + 0x18]
push edi
push edx
call fcn.007e5710
test eax, eax
nop
mov edx, dword [esi + 4]
je 0x818220
nop
cmp dword [edx + 0x94], 0
jne 0x818220
nop
mov dword [edx + 0xa8], eax
mov eax, 2
test byte [esi], 1
mov cl, 1
mov dword [esi], ecx
mov edi, dword [esi + 0x14]
je 0x818190
jmp 0x818130
nop
mov ecx, dword [edx + 0x90]
push dword [edx + 0x1c]
push dword [edx + 0x18]
push edi
push edx
call fcn.007e5710
test eax, eax
nop
mov edi, dword [esi + 4]
je 0x819ae6
nop
cmp dword [edi + 0x94], 0
jne 0x819ae6
nop
mov dword [edi + 0xa8], eax
jmp 0x818138
test byte [esi], 1
je 0x819adb
nop
push 0
call dword [sym.imp.KERNEL32.dll_GetDriveTypeA]
cmp eax, 4
je 0x819adb
nop
mov eax, dword [esi + 4]
mov eax, dword [eax + 4]
mov ecx, 0xf00
and eax, ecx
cmp eax, 0x100
je 0x81826f
cmp eax, 0x400
nop
mov edx, dword [esi + 4]
je 0x818121
cmp eax, 0x200
je 0x818121
jmp 0x818130
mov eax, 0x11
jmp 0x818126
lea ecx, [esi + 0x110]
push 1
call fcn.00687fd0
nop
mov eax, dword [esi + 0xf0]
cmp eax, dword [esi + 0xf4]
mov dword [esi + 0x1c4], 0x9e93e8
mov dword [esi + 0x1c8], 0
mov dword [esi + 0x1cc], 0
mov dword [esi + 0x1d0], 0
mov byte [esi + 0x1d4], 1
lea eax, [esi + 0x1d8]
pxor xmm0, xmm0
movdqu xmmword [eax], xmm0
je 0x818305
nop
mov dword [esi + 0x1f8], 0x10
push dword [esi + 0xec]
call fcn.0091d83b
add esp, 4
mov edx, eax
mov eax, dword [esi + 0x20]
mov dword [esi + 0x1d0], eax
mov dword [esi + 0x1cc], eax
jmp 0x818307
xor edx, edx
nop
cmp dword [esi + 0xc8], 0
mov dword [esi + 0x1c8], edx
jle 0x818480
nop
mov eax, dword [esi + 0x28]
lea ecx, [eax*4]
mov eax, dword [esi + 8]
add ecx, dword [eax + 0x2c4]
mov eax, ecx
xor ebx, ebx
cmp dword [esi + 0xc8], 0x180
mov ecx, dword [esi + 0x1cc]
jl 0x818421
nop
mov dword [esi + 0x1f8], 0xffffffff
xor ebx, ebx
mov edi, 0xc4
nop
mov dword [esi + 4], edx
mov dword [esi + 0x14], eax
mov dword [esi + 0xc], ecx
nop word cs:[eax + eax]
nop
mov dword [esi], ebx
cmp ecx, ebx
mov eax, 0
cmova eax, ebx
mov ecx, dword [esi + 0x14]
mov ecx, dword [ecx]
mov dword [esi + 0x18], ecx
mov ebx, dword [0xa63ad0]
mov ecx, dword [0xa63aa4]
sub ecx, dword [esi + 0x1c]
add ecx, ebx
mov edx, dword [esi + 0x18]
add edx, edi
add edx, 0xffffff40
mov dword [esi + 0x18], edx
lea eax, [eax + eax*4]
mov edx, dword [esi + 4]
lea ebx, [edx + eax*8]
call dword [0xa37360]
push 0x28
push dword [esi + 0x18]
push ebx
call ecx
add esp, 0xc
mov eax, dword [esi + 0x14]
mov ebx, dword [eax]
add ebx, edi
mov eax, dword [esi]
inc eax
cmp dword [esi + 0xc], eax
mov ecx, 0
cmovbe eax, ecx
mov edx, dword [0xa63ad0]
mov ecx, dword [0xa63aa4]
sub ecx, dword [esi + 0x1c]
add ecx, edx
lea eax, [eax + eax*4]
mov edx, dword [esi + 4]
lea eax, [edx + eax*8]
mov dword [esi + 0x18], eax
call dword [0xa37360]
push 0x28
push ebx
mov ebx, dword [esi]
push dword [esi + 0x18]
call ecx
mov ecx, dword [esi + 0xc]
add esp, 0xc
add ebx, 2
add edi, 0x180
cmp ebx, dword [esi + 0xb4]
jne 0x818370
mov edx, dword [esi + 4]
mov eax, dword [esi + 0x14]
nop
test byte [esi + 0xe8], 1
mov dword [esi + 0x1f8], 0xffffffff
je 0x818480
mov edi, eax
lea eax, [ebx + ebx*2]
shl eax, 6
cmp ecx, ebx
mov ecx, 0
cmovbe ebx, ecx
mov ecx, dword [edi]
add eax, ecx
add eax, 4
mov dword [esi], eax
mov eax, dword [0xa63ad0]
add eax, dword [esi + 0x10]
mov ecx, dword [0xa63aa4]
add ecx, eax
add ecx, 0x4af0
lea eax, [ebx + ebx*4]
lea ebx, [edx + eax*8]
mov edi, edx
call dword [0xa37360]
push 0x28
push dword [esi]
push ebx
call ecx
mov edx, edi
add esp, 0xc
nop
mov eax, dword [esi + 0x1cc]
test eax, eax
cmove edx, eax
mov dword [esi + 4], edx
mov edi, dword [esi + 8]
mov eax, dword [edi]
mov ebx, dword [eax + 8]
mov dword [esi + 0x1f8], 0xffffffff
mov ecx, ebx
call dword [0xa37360]
mov dword [esi + 0x1f8], 0x11
mov ecx, edi
push dword [esi + 0x20]
push dword [esi + 4]
push 0x20
lea eax, [esi + 0x64]
push eax
call ebx
nop
mov eax, dword [esi + 0x64]
cmp dword [esi + 0x5c], 0
setne byte [esi + 0x18]
cmp eax, 4
je 0x8199c0
cmp eax, 8
jne 0x8184f3
nop
mov dword [esi + 0x1f8], 0xffffffff
mov dword [esi], 1
jmp 0x8199d4
nop
mov ebx, dword [esi + 8]
mov eax, dword [ebx]
mov edi, dword [eax + 8]
mov dword [esi + 0x1f8], 0xffffffff
mov ecx, edi
call dword [0xa37360]
mov dword [esi + 0x1f8], 0x11
mov ecx, ebx
push 0
push 0
push 9
lea eax, [esi + 0x64]
push eax
call edi
nop
cmp dword [esi + 0x64], 4
jne 0x818571
nop
mov ebx, dword [esi + 8]
mov eax, dword [ebx]
mov edi, dword [eax + 8]
mov dword [esi + 0x1f8], 0xffffffff
mov ecx, edi
call dword [0xa37360]
mov dword [esi + 0x1f8], 0x11
mov ecx, ebx
push 0
push 0
push 8
lea eax, [esi + 0x64]
push eax
call edi
nop
cmp dword [esi + 0x64], 4
sete al
mov dword [esi + 0x60], eax
mov byte [esi + 0x18], 1
jmp 0x818578
mov dword [esi + 0x60], 0
nop
mov ebx, dword [esi + 8]
mov eax, dword [ebx]
mov edi, dword [eax + 8]
mov dword [esi + 0x1f8], 0xffffffff
mov ecx, edi
call dword [0xa37360]
mov dword [esi + 0x1f8], 0x11
mov ecx, ebx
push 0
push dword [esi + 0xc4]
push 6
lea eax, [esi + 0x64]
push eax
call edi
nop
mov ebx, dword [esi + 8]
mov eax, dword [ebx]
mov edi, dword [eax + 8]
mov dword [esi + 0x1f8], 0xffffffff
mov ecx, edi
call dword [0xa37360]
mov dword [esi + 0x1f8], 0x11
mov ecx, ebx
push 0
push dword [esi + 0xc0]
push 7
lea eax, [esi + 0x64]
push eax
call edi
nop
mov dword [esi + 0x4c], 0
mov dword [esi + 0x48], 0
movzx eax, byte [0xa62b9b]
cmp al, 8
je 0x8186bd
nop word cs:[eax + eax]
mov al, 0xbf
mov cl, 0x97
lock cmpxchg byte [0xa62b9b], cl
je 0x818627
cmp al, 8
jne 0x818610
jmp 0x8186bd
mov ecx, 0xffffffd6
mov edx, 0xe7601b94
mov dword [esi], 0xe7601b93
lea eax, [0x193e78e7]
mov dword [esi + 4], eax
lea edi, [0x193e78e6]
mov dword [esi + 0x14], edi
nop dword [eax]
mov edi, edx
mov eax, edx
mov edx, 0x2fa0be83
mul edx
mov ebx, edx
mov eax, dword [esi]
mov edx, 0x2fa0be83
mul edx
shr edx, 3
imul eax, edx, 0x2b
mov edx, dword [esi + 4]
movzx eax, byte [edx + eax]
xor al, 0x22
add byte [ecx + 0xa62b9a], al
test ecx, ecx
je 0x8186ab
shr ebx, 3
imul eax, ebx, 0x2b
mov edx, dword [esi + 0x14]
movzx eax, byte [edx + eax]
xor al, 0x22
add byte [ecx + 0xa62b9b], al
add ecx, 2
add edx, 0xfffffffe
mov dword [esi + 0x14], edx
mov edx, edi
add edx, 2
add dword [esi + 4], 0xfffffffe
add dword [esi], 2
jmp 0x818650
mov al, 8
xchg byte [0xa62b9b], al
mov dword [esi + 0x1f8], 0x11
nop
mov dword [esi + 0x1f8], 0x11
push 0xa62b70
lea eax, [esi + 0x120]
push eax
call fcn.006881d0
add esp, 8
nop
push eax
call fcn.007a27f0
add esp, 4
mov al, 1
mov dword [esi + 0x24], eax
mov dword [esi + 0x14], 0
xor eax, eax
cmp eax, dword [esi + 0x20]
jge 0x819033
nop dword [eax]
nop
mov dword [esi + 4], eax
lea edi, [eax + eax*2]
shl edi, 6
mov ecx, dword [esi + 8]
mov eax, dword [ecx + 0x2c4]
mov edx, dword [esi + 0x28]
add edi, dword [eax + edx*4]
mov dword [esi], edi
cmp dword [ecx + 0x304], 0x4e4
jne 0x818760
nop
movzx eax, byte [0xa62ba3]
cmp al, 0x45
je 0x8187ac
nop word cs:[eax + eax]
mov al, 0x20
mov cl, 9
lock cmpxchg byte [0xa62ba3], cl
je 0x818784
cmp al, 0x45
jne 0x818740
jmp 0x8187ac
nop
movzx eax, byte [0xa62bb3]
cmp al, 0x8b
je 0x8187f5
mov al, 6
mov cl, 0x8f
lock cmpxchg byte [0xa62bb3], cl
je 0x8187cd
cmp al, 0x8b
jne 0x818770
jmp 0x8187f5
nop
add byte [0xa62ba0], 0xa8
add byte [0xa62ba1], 0xe2
add byte [0xa62ba2], 7
mov al, 0x45
xchg byte [0xa62ba3], al
mov dword [esi + 0x1f8], 0x11
nop
mov dword [esi + 0x1f8], 0x11
push 0xa62ba0
lea eax, [esi + 0x120]
push eax
call fcn.006881d0
add esp, 8
jmp 0x818814
nop
add byte [0xa62bb0], 0xe
add byte [0xa62bb1], 0xf4
add byte [0xa62bb2], 0x8b
mov al, 0x8b
xchg byte [0xa62bb3], al
mov dword [esi + 0x1f8], 0x11
nop
mov dword [esi + 0x1f8], 0x11
push 0xa62bb0
lea eax, [esi + 0x120]
push eax
call fcn.006881d0
add esp, 8
nop
mov eax, dword [esi + 0x14]
mov ecx, dword [esi]
or eax, dword [ecx + 4]
mov dword [esi + 0x14], eax
lea eax, [esi + 0x64]
push eax
call fcn.00767c20
nop
cmp dword [esi + 0x7c], 0x10
lea eax, [esi + 0x68]
jb 0x818836
mov eax, dword [esi + 0x68]
mov ecx, dword [esi + 0x78]
mov dword [esi + 0x1f8], 0x16
push ecx
push eax
lea eax, [esi + 0x120]
push eax
call fcn.0079ce80
add esp, 0xc
nop
mov eax, dword [esi + 0x7c]
cmp eax, 0x10
jb 0x818890
nop
mov ecx, dword [esi + 0x68]
lea edx, [eax + 1]
cmp edx, 0x1000
jb 0x818885
nop
mov edi, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edi
cmp ecx, 0x20
jae 0x819e1b
add eax, 0x24
mov edx, eax
mov ecx, edi
nop
push edx
push ecx
call fcn.0091d82d
add esp, 8
nop
cmp byte [esi + 0x18], 0
je 0x818f51
nop
mov eax, dword [esi]
mov edx, dword [eax + 0xa8]
mov eax, dword [esi + 0x50]
mov ecx, dword [esi + 4]
mov dword [eax + ecx*4], edx
mov dword [esi + 0xc], edx
test edx, edx
js 0x818a0b
cmp byte [esi + 0x60], 0
je 0x818a2f
nop
mov dword [esi + 0x78], 0
mov dword [esi + 0x7c], 0xf
mov byte [esi + 0x68], 0
mov dword [esi + 0x64], 0x954b60
cmp dword [esi + 0xc], 0
js 0x818902
nop
mov dword [esi + 0x1f8], 0x17
mov ecx, dword [esi + 8]
lea eax, [esi + 0x48]
push eax
lea eax, [esi + 0x64]
push eax
push dword [esi + 0xc]
push dword [esi]
call fcn.007e6e20
nop
mov eax, dword [esi + 0x120]
mov eax, dword [eax + 4]
mov eax, dword [esi + eax + 0x150]
mov edi, dword [eax + 4]
mov dword [esi + 0x30], edi
mov eax, dword [edi]
mov ebx, dword [eax + 4]
mov dword [esi + 0x1f8], 0xffffffff
mov ecx, ebx
call dword [0xa37360]
mov ecx, edi
call ebx
mov dword [esi + 0x1f8], 0x18
lea eax, [esi + 0x2c]
push eax
call fcn.006788f0
add esp, 4
mov edi, eax
mov eax, dword [eax]
mov ebx, dword [eax + 0x20]
mov dword [esi + 0x1f8], 0xffffffff
mov ecx, ebx
call dword [0xa37360]
mov dword [esi + 0x1f8], 0x18
mov ecx, edi
push 0xa
call ebx
mov byte [esi], al
nop
mov edi, dword [esi + 0x30]
test edi, edi
je 0x8189b2
nop
mov eax, dword [edi]
mov ebx, dword [eax + 8]
mov dword [esi + 0x1f8], 0xffffffff
mov ecx, ebx
call dword [0xa37360]
mov ecx, edi
call ebx
test eax, eax
je 0x8189b2
nop
mov ecx, dword [eax]
mov edi, dword [ecx]
mov ecx, edi
mov ebx, eax
call dword [0xa37360]
mov ecx, ebx
push 1
call edi
nop
mov dword [esi + 0x1f8], 0x17
movsx eax, byte [esi]
lea ecx, [esi + 0x120]
push eax
call fcn.007a28d0
lea ecx, [esi + 0x120]
call fcn.0069fa70
nop
movzx eax, byte [0xa62bd4]
cmp al, 0x13
je 0x818b22
nop word [eax + eax]
mov al, 0xd5
mov cl, 0x6b
lock cmpxchg byte [0xa62bd4], cl
je 0x818adf
cmp al, 0x13
jne 0x8189f0
jmp 0x818b22
nop
mov word [esi + 0x4c], 0
mov byte [esi + 0x4e], 0
mov eax, dword [esi + 0x24]
and al, 1
mov byte [esi + 0x4f], al
mov eax, dword [esi + 0xc]
mov dword [esi + 0x48], eax
nop
cmp byte [esi + 0x60], 0
jne 0x8188c2
nop
mov dword [esi + 0x1f8], 0x11
mov ecx, dword [esi]
call fcn.00768400
mov dword [esi], eax
nop
movzx eax, byte [0xa62be9]
cmp al, 0xd6
je 0x818a96
nop
mov al, 0x69
mov cl, 0x8c
lock cmpxchg byte [0xa62be9], cl
je 0x818a64
cmp al, 0xd6
jne 0x818a50
jmp 0x818a96
nop
movq xmm0, qword [0xa62be0]
pxor xmm0, xmmword [0x9e9300]
movq qword [0xa62be0], xmm0
xor byte [0xa62be8], 0xa2
mov al, 0xd6
xchg byte [0xa62be9], al
mov dword [esi + 0x1f8], 0x11
nop
mov dword [esi + 0x1f8], 0x11
push 0xa62be0
lea eax, [esi + 0x120]
push eax
call fcn.006881d0
add esp, 8
nop
push dword [esi]
push eax
call fcn.006881d0
add esp, 8
mov ecx, eax
push dword [esi + 0xc]
call fcn.0079a9a0
nop
push 0x9e9384
push eax
call fcn.006881d0
add esp, 8
jmp 0x818f51
nop
movdqa xmm0, xmmword [0xa62bc0]
paddb xmm0, xmmword [0x9e9310]
movdqa xmmword [0xa62bc0], xmm0
movdqa xmm0, xmmword [0xa62bd0]
paddb xmm0, xmmword [0x9e9320]
movd dword [0xa62bd0], xmm0
mov al, 0x13
xchg byte [0xa62bd4], al
mov dword [esi + 0x1f8], 0x17
nop
mov dword [esi + 0x1f8], 0x17
push 0xa62bc0
lea eax, [esi + 0x120]
push eax
call fcn.006881d0
add esp, 8
nop
mov dword [esi + 0xb8], 0
mov ebx, dword [esi + 8]
mov eax, dword [ebx]
mov edi, dword [eax + 8]
mov dword [esi + 0x1f8], 0xffffffff
mov ecx, edi
call dword [0xa37360]
mov dword [esi + 0x1f8], 0x17
mov ecx, ebx
lea eax, [esi + 0xb8]
push eax
lea eax, [esi + 0x48]
push eax
push 0xa
lea eax, [esi + 0x2c]
push eax
call edi
nop
cmp dword [esi + 0x2c], 4
jne 0x818c3a
cmp dword [esi + 0xc], 0
js 0x818ed5
lea ecx, [esi + 0x128]
lea eax, [esi + 0xcc]
push eax
call fcn.006a3630
nop
mov dword [esi + 0x1f8], 0x19
lea ecx, [esi + 0x128]
lea eax, [esi + 0xf8]
push eax
call fcn.006a3630
nop
mov eax, dword [esi + 0x108]
mov dword [esi + 0x3c], 0
mov dword [esi + 0x40], 0xf
mov byte [esi + 0x2c], 0
mov edi, dword [esi + 0xdc]
sub edi, eax
jb 0x819e3b
nop
cmp dword [esi + 0xe0], 0x10
lea ebx, [esi + 0xcc]
jb 0x818c06
mov ebx, dword [esi + 0xcc]
add ebx, eax
cmp edi, 0xf
jbe 0x818c5f
nop
mov dword [esi + 0x1f8], 0x1a
sub esp, 0xc
movzx eax, byte [esi + 0xbc]
mov byte [esp + 4], al
mov dword [esp + 8], ebx
mov dword [esp], edi
lea ecx, [esi + 0x2c]
call fcn.006704d0
lea ebx, [esi + 0x2c]
jmp 0x818c99
nop
cmp dword [esi + 0x7c], 0x10
lea eax, [esi + 0x68]
jb 0x818c47
mov eax, dword [esi + 0x68]
push dword [esi + 0x78]
push eax
lea eax, [esi + 0x120]
push eax
call fcn.0079ce80
add esp, 0xc
jmp 0x818ef6
nop
mov dword [esi + 0x3c], edi
mov eax, dword [0xa63ad4]
add eax, dword [esi + 0x10]
mov ecx, dword [0xa63a9c]
add ecx, eax
add ecx, 0x4af0
mov dword [esi + 0x1f8], 0xffffffff
call dword [0xa37360]
push edi
push ebx
lea ebx, [esi + 0x2c]
push ebx
call ecx
add esp, 0xc
mov byte [esi + edi + 0x2c], 0
nop
mov eax, dword [0xa63abc]
mov edi, dword [0xa63a98]
sub edi, dword [esi + 0x1c]
add edi, eax
mov dword [esi + 0x1f8], 0xffffffff
mov ecx, edi
call dword [0xa37360]
lea ecx, [esi + 0x128]
call edi
mov ecx, dword [esi + 0x164]
mov edx, dword [esi + 0x3c]
cmp dword [esi + 0x40], 0x10
mov eax, ebx
jb 0x818cd8
mov eax, dword [esi + 0x2c]
mov dword [esi + 0xc], eax
test edx, edx
js 0x819e2b
sete al
mov dword [esi], ecx
not ecx
test cl, 6
sete cl
or cl, al
je 0x818d07
nop
mov dword [esi + 0x160], 0
nop
mov ecx, dword [esi]
jmp 0x818dfd
cmp edx, 0x1000
mov dword [esi + 0xe4], edx
jb 0x818d38
lea eax, [edx + 0x23]
mov dword [esi + 0x1f8], 0x1b
push eax
call fcn.0091d7fd
add esp, 4
mov edi, eax
add edi, 0x23
and edi, 0xffffffe0
mov dword [edi - 4], eax
jmp 0x818d4e
nop
mov dword [esi + 0x1f8], 0x1b
push edx
call fcn.0091d7fd
add esp, 4
mov edi, eax
nop
mov eax, dword [0xa63ad0]
mov ecx, dword [0xa63aa4]
sub ecx, dword [esi + 0x1c]
add ecx, eax
mov dword [esi + 0x1f8], 0xffffffff
call dword [0xa37360]
mov ebx, dword [esi + 0xe4]
push ebx
push dword [esi + 0xc]
push edi
call ecx
add esp, 0xc
lea eax, [edi + ebx]
mov dword [esi + 0x160], eax
mov ecx, dword [esi]
test cl, 4
jne 0x818da8
nop
mov eax, dword [esi + 0x134]
mov dword [eax], edi
mov eax, dword [esi + 0x144]
mov dword [eax], edi
mov eax, dword [esi + 0x154]
mov dword [eax], ebx
test cl, 2
jne 0x818dfa
nop
mov eax, dword [esi + 0x160]
test cl, 0x18
mov ecx, eax
cmove ecx, edi
mov edx, dword [esi + 0x138]
mov dword [edx], edi
mov edx, dword [esi + 0x148]
mov dword [edx], ecx
sub eax, ecx
mov ecx, dword [esi + 0x158]
mov dword [ecx], eax
mov ecx, dword [esi]
test cl, 4
je 0x818dfa
nop
mov eax, dword [esi + 0x134]
mov dword [eax], edi
mov eax, dword [esi + 0x144]
mov dword [eax], 0
mov eax, dword [esi + 0x154]
mov dword [eax], edi
or ecx, 1
nop
mov dword [esi + 0x164], ecx
mov eax, dword [esi + 0x40]
cmp eax, 0x10
jb 0x818e3f
nop
mov ecx, dword [esi + 0x2c]
lea edx, [eax + 1]
cmp edx, 0x1000
jb 0x818e34
nop
mov edi, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edi
cmp ecx, 0x20
jae 0x819e8a
add eax, 0x24
mov edx, eax
mov ecx, edi
nop
push edx
push ecx
call fcn.0091d82d
add esp, 8
nop
mov dword [esi + 0x3c], 0
mov dword [esi + 0x40], 0xf
mov byte [esi + 0x2c], 0
mov eax, dword [esi + 0x10c]
cmp eax, 0x10
jb 0x818e93
nop
mov ecx, dword [esi + 0xf8]
lea edx, [eax + 1]
cmp edx, 0x1000
jb 0x818e88
nop
mov edi, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edi
cmp ecx, 0x20
jae 0x819e9a
add eax, 0x24
mov edx, eax
mov ecx, edi
nop
push edx
push ecx
call fcn.0091d82d
add esp, 8
nop
mov eax, dword [esi + 0xe0]
cmp eax, 0x10
jb 0x818ed5
nop
mov ecx, dword [esi + 0xcc]
lea edx, [eax + 1]
cmp edx, 0x1000
jb 0x818eca
nop
mov edi, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edi
cmp ecx, 0x20
jae 0x819eaa
add eax, 0x24
mov edx, eax
mov ecx, edi
nop
push edx
push ecx
call fcn.0091d82d
add esp, 8
nop
mov eax, dword [esi + 0xb8]
mov dword [esi + 0x1f8], 0x17
push eax
lea eax, [esi + 0x120]
push eax
call fcn.006881d0
add esp, 8
nop
mov ecx, dword [esi + 0x24]
movzx ecx, cl
cmp byte [esi + 0x4f], 0
mov eax, 0
cmove ecx, eax
mov dword [esi + 0x24], ecx
mov eax, dword [esi + 0x7c]
cmp eax, 0x10
jb 0x818f51
nop
mov ecx, dword [esi + 0x68]
mov edx, eax
xor edx, 1
mov edi, eax
and edi, 1
lea edx, [edx + edi*2]
cmp edx, 0x1000
jb 0x818f46
nop
mov edi, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edi
cmp ecx, 0x20
jae 0x819e4b
add eax, 0x24
mov edx, eax
mov ecx, edi
nop
push edx
push ecx
call fcn.0091d82d
add esp, 8
nop
mov eax, dword [esi + 0x120]
mov eax, dword [eax + 4]
mov eax, dword [esi + eax + 0x150]
mov edi, dword [eax + 4]
mov dword [esi + 0x68], edi
mov eax, dword [edi]
mov ebx, dword [eax + 4]
mov dword [esi + 0x1f8], 0xffffffff
mov ecx, ebx
call dword [0xa37360]
mov ecx, edi
call ebx
mov dword [esi + 0x1f8], 0x12
lea eax, [esi + 0x64]
push eax
call fcn.006788f0
add esp, 4
mov edi, eax
mov eax, dword [eax]
mov ebx, dword [eax + 0x20]
mov dword [esi + 0x1f8], 0xffffffff
mov ecx, ebx
call dword [0xa37360]
mov dword [esi + 0x1f8], 0x12
mov ecx, edi
push 0xa
call ebx
mov byte [esi], al
nop
mov edi, dword [esi + 0x68]
test edi, edi
je 0x819001
nop
mov eax, dword [edi]
mov ebx, dword [eax + 8]
mov dword [esi + 0x1f8], 0xffffffff
mov ecx, ebx
call dword [0xa37360]
mov ecx, edi
call ebx
test eax, eax
je 0x819001
nop
mov ecx, dword [eax]
mov edi, dword [ecx]
mov ecx, edi
mov ebx, eax
call dword [0xa37360]
mov ecx, ebx
push 1
call edi
nop
mov dword [esi + 0x1f8], 0x11
movsx eax, byte [esi]
lea ecx, [esi + 0x120]
push eax
call fcn.007a28d0
lea ecx, [esi + 0x120]
call fcn.0069fa70
mov eax, dword [esi + 4]
inc eax
cmp eax, dword [esi + 0x20]
jl 0x818700
test byte [esi + 0x24], 1
je 0x8193a8
nop
mov dword [esi + 0xf8], 0
mov ebx, dword [esi + 8]
mov eax, dword [ebx]
mov edi, dword [eax + 8]
mov dword [esi + 0x1f8], 0xffffffff
mov ecx, edi
call dword [0xa37360]
mov dword [esi + 0x1f8], 0x11
mov ecx, ebx
lea eax, [esi + 0xf8]
push eax
lea eax, [esi + 0x48]
push eax
push 0xb
lea eax, [esi + 0x64]
push eax
call edi
nop
cmp dword [esi + 0x64], 4
jne 0x8193a8
lea ecx, [esi + 0x128]
lea eax, [esi + 0x2c]
push eax
call fcn.006a3630
nop
mov dword [esi + 0x1f8], 0x13
lea ecx, [esi + 0x128]
lea eax, [esi + 0xcc]
push eax
call fcn.006a3630
nop
mov eax, dword [esi + 0xdc]
mov dword [esi + 0x74], 0
mov dword [esi + 0x78], 0xf
mov byte [esi + 0x64], 0
mov edi, dword [esi + 0x3c]
sub edi, eax
jb 0x819eea
nop
cmp dword [esi + 0x40], 0x10
lea ebx, [esi + 0x2c]
jb 0x8190e9
mov ebx, dword [esi + 0x2c]
add ebx, eax
cmp edi, 0xf
jbe 0x81911d
nop
mov dword [esi + 0x1f8], 0x14
sub esp, 0xc
movzx eax, byte [esi + 0xb8]
mov byte [esp + 4], al
mov dword [esp + 8], ebx
mov dword [esp], edi
lea ecx, [esi + 0x64]
call fcn.006704d0
lea ebx, [esi + 0x64]
jmp 0x819157
nop
mov dword [esi + 0x74], edi
mov eax, dword [0xa63ad4]
add eax, dword [esi + 0x10]
mov ecx, dword [0xa63a9c]
add ecx, eax
add ecx, 0x4af0
mov dword [esi + 0x1f8], 0xffffffff
call dword [0xa37360]
push edi
push ebx
lea ebx, [esi + 0x64]
push ebx
call ecx
add esp, 0xc
mov byte [esi + edi + 0x64], 0
nop
mov eax, dword [0xa63abc]
mov edi, dword [0xa63a98]
sub edi, dword [esi + 0x1c]
add edi, eax
mov dword [esi + 0x1f8], 0xffffffff
mov ecx, edi
call dword [0xa37360]
lea ecx, [esi + 0x128]
call edi
mov ecx, dword [esi + 0x164]
mov edx, dword [esi + 0x74]
cmp dword [esi + 0x78], 0x10
mov eax, ebx
jb 0x819196
mov eax, dword [esi + 0x64]
mov dword [esi + 4], eax
test edx, edx
js 0x819eca
sete al
mov dword [esi], ecx
not ecx
test cl, 6
sete cl
or cl, al
je 0x8191c5
nop
mov dword [esi + 0x160], 0
nop
mov ecx, dword [esi]
jmp 0x8192b5
cmp edx, 0x1000
mov dword [esi + 0xc], edx
jb 0x8191f3
lea eax, [edx + 0x23]
mov dword [esi + 0x1f8], 0x15
push eax
call fcn.0091d7fd
add esp, 4
mov edi, eax
add edi, 0x23
and edi, 0xffffffe0
mov dword [edi - 4], eax
jmp 0x819209
nop
mov dword [esi + 0x1f8], 0x15
push edx
call fcn.0091d7fd
add esp, 4
mov edi, eax
nop
mov eax, dword [0xa63ad0]
mov ecx, dword [0xa63aa4]
sub ecx, dword [esi + 0x1c]
add ecx, eax
mov dword [esi + 0x1f8], 0xffffffff
call dword [0xa37360]
mov ebx, dword [esi + 0xc]
push ebx
push dword [esi + 4]
push edi
call ecx
add esp, 0xc
lea eax, [edi + ebx]
mov dword [esi + 0x160], eax
mov ecx, dword [esi]
test cl, 4
jne 0x819260
nop
mov eax, dword [esi + 0x134]
mov dword [eax], edi
mov eax, dword [esi + 0x144]
mov dword [eax], edi
mov eax, dword [esi + 0x154]
mov dword [eax], ebx
test cl, 2
jne 0x8192b2
nop
mov eax, dword [esi + 0x160]
test cl, 0x18
mov ecx, eax
cmove ecx, edi
mov edx, dword [esi + 0x138]
mov dword [edx], edi
mov edx, dword [esi + 0x148]
mov dword [edx], ecx
sub eax, ecx
mov ecx, dword [esi + 0x158]
mov dword [ecx], eax
mov ecx, dword [esi]
test cl, 4
je 0x8192b2
nop
mov eax, dword [esi + 0x134]
mov dword [eax], edi
mov eax, dword [esi + 0x144]
mov dword [eax], 0
mov eax, dword [esi + 0x154]
mov dword [eax], edi
or ecx, 1
nop
mov dword [esi + 0x164], ecx
mov eax, dword [esi + 0x78]
cmp eax, 0x10
jb 0x8192f7
nop
mov ecx, dword [esi + 0x64]
lea edx, [eax + 1]
cmp edx, 0x1000
jb 0x8192ec
nop
mov edi, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edi
cmp ecx, 0x20
jae 0x819f1a
add eax, 0x24
mov edx, eax
mov ecx, edi
nop
push edx
push ecx
call fcn.0091d82d
add esp, 8
nop
mov dword [esi + 0x74], 0
mov dword [esi + 0x78], 0xf
mov byte [esi + 0x64], 0
mov eax, dword [esi + 0xe0]
cmp eax, 0x10
jb 0x81934b
nop
mov ecx, dword [esi + 0xcc]
lea edx, [eax + 1]
cmp edx, 0x1000
jb 0x819340
nop
mov edi, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edi
cmp ecx, 0x20
jae 0x819f2a
add eax, 0x24
mov edx, eax
mov ecx, edi
nop
push edx
push ecx
call fcn.0091d82d
add esp, 8
nop
mov eax, dword [esi + 0x40]
cmp eax, 0x10
jb 0x819387
nop
mov ecx, dword [esi + 0x2c]
lea edx, [eax + 1]
cmp edx, 0x1000
jb 0x81937c
nop
mov edi, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edi
cmp ecx, 0x20
jae 0x819f3a
add eax, 0x24
mov edx, eax
mov ecx, edi
nop
push edx
push ecx
call fcn.0091d82d
add esp, 8
nop
mov eax, dword [esi + 0xf8]
mov dword [esi + 0x1f8], 0x11
push eax
lea eax, [esi + 0x120]
push eax
call fcn.006881d0
add esp, 8
lea ecx, [esi + 0x128]
lea eax, [esi + 0x64]
push eax
call fcn.006a3630
nop
mov dword [esi + 0x40], 0
mov dword [esi + 0x44], 0
cmp dword [esi + 0x78], 0x10
lea eax, [esi + 0x64]
jb 0x8193d2
mov eax, dword [esi + 0x64]
mov dword [esi], eax
mov ebx, dword [esi + 0x74]
cmp ebx, 0xf
ja 0x81941a
nop
mov eax, dword [0xa63ad0]
add eax, dword [esi + 0x10]
mov ecx, dword [0xa63aa4]
add ecx, eax
add ecx, 0x4af0
mov dword [esi + 0x1f8], 0xffffffff
call dword [0xa37360]
push 0x10
push dword [esi]
lea eax, [esi + 0x30]
push eax
call ecx
add esp, 0xc
mov eax, 0xf
jmp 0x8194b6
mov eax, ebx
or eax, 0xf
mov dword [esi + 4], ebx
test ebx, ebx
mov ecx, eax
mov eax, 0x7fffffff
cmovs ecx, eax
cmp ecx, 0xfff
mov dword [esi + 0xc], ecx
jb 0x81945c
lea eax, [ecx + 0x24]
mov dword [esi + 0x1f8], 0x1e
push eax
call fcn.0091d7fd
add esp, 4
mov edi, eax
add edi, 0x23
and edi, 0xffffffe0
mov dword [edi - 4], eax
jmp 0x819474
lea eax, [ecx + 1]
mov dword [esi + 0x1f8], 0x1e
push eax
call fcn.0091d7fd
add esp, 4
mov edi, eax
nop
mov dword [esi + 0x30], edi
mov eax, dword [0xa63ad0]
add eax, dword [esi + 0x10]
mov ecx, dword [0xa63aa4]
add ecx, eax
add ecx, 0x4af0
mov ebx, dword [esi + 4]
lea eax, [ebx + 1]
mov dword [esi + 0x18], eax
mov dword [esi + 0x1f8], 0xffffffff
call dword [0xa37360]
push dword [esi + 0x18]
push dword [esi]
push edi
call ecx
add esp, 0xc
nop
mov eax, dword [esi + 0xc]
nop
mov dword [esi + 0x40], ebx
mov dword [esi + 0x44], eax
mov dword [esi + 0x2c], 0x954b60
mov eax, dword [esi + 0x78]
cmp eax, 0x10
jb 0x8194ff
nop
mov ecx, dword [esi + 0x64]
lea edx, [eax + 1]
cmp edx, 0x1000
jb 0x8194f4
nop
mov edi, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edi
cmp ecx, 0x20
jae 0x819eba
add eax, 0x24
mov edx, eax
mov ecx, edi
nop
push edx
push ecx
call fcn.0091d82d
add esp, 8
nop
cmp dword [esi + 0x44], 0x10
lea edi, [esi + 0x30]
jb 0x81950c
mov edi, dword [esi + 0x30]
mov ebx, dword [esi + 8]
mov eax, dword [ebx]
mov ecx, dword [eax + 8]
mov dword [esi], ecx
call dword [0xa37360]
mov dword [esi + 0x1f8], 0x1c
mov ecx, ebx
push 0
mov dword [esi + 0xc], edi
push edi
push 0x21
lea eax, [esi + 0x64]
push eax
call dword [esi]
nop
mov eax, dword [esi + 0x64]
cmp eax, 4
je 0x81954f
cmp eax, 8
jne 0x81955a
mov dword [esi], 0x12
jmp 0x81995f
mov dword [esi], 0x11
jmp 0x81995f
nop
movzx eax, byte [0xa62c0d]
cmp al, 0x94
je 0x819606
nop word [eax + eax]
mov al, 0xbf
mov cl, 0xfe
lock cmpxchg byte [0xa62c0d], cl
je 0x819587
cmp al, 0x94
jne 0x819570
jmp 0x819606
xor ecx, ecx
mov eax, 0x7111dc8e
mov dword [esi], 0x7111dc8d
nop word cs:[eax + eax]
mov edi, eax
mov edx, 0x8d3dcb09
mul edx
mov ebx, edx
mov eax, dword [esi]
mov edx, 0x8d3dcb09
mul edx
shr edx, 4
imul eax, edx, 0xffffffe3
movzx eax, byte [eax + ecx + 0x71b0710d]
xor al, 0xee
add byte [ecx + 0xa62bf0], al
cmp ecx, 0x1c
je 0x8195f4
shr ebx, 4
imul eax, ebx, 0xffffffe3
lea eax, [eax + 0x71b0710e]
movzx eax, byte [eax + ecx]
xor al, 0xee
add byte [ecx + 0xa62bf1], al
add ecx, 2
mov eax, edi
add eax, 2
add dword [esi], 2
jmp 0x8195a0
mov al, 0x94
xchg byte [0xa62c0d], al
mov dword [esi + 0x1f8], 0xffffffff
nop
mov dword [esi + 0xcc], 0xa62bf0
mov ebx, dword [esi + 8]
mov eax, dword [ebx]
mov edi, dword [eax + 8]
mov dword [esi + 0x1f8], 0xffffffff
mov ecx, edi
call dword [0xa37360]
mov dword [esi + 0x1f8], 0x1c
mov ecx, ebx
push 0
lea eax, [esi + 0xcc]
push eax
push 4
lea eax, [esi + 0x64]
push eax
call edi
nop
mov ebx, dword [esi + 8]
mov eax, dword [ebx]
mov edi, dword [eax + 8]
mov dword [esi + 0x1f8], 0xffffffff
mov ecx, edi
call dword [0xa37360]
mov dword [esi + 0x1f8], 0x1c
mov ecx, ebx
push dword [esi + 0x5c]
lea eax, [esi + 0x48]
push eax
push 2
lea eax, [esi + 0x64]
push eax
call edi
nop
mov ecx, dword [esi + 0x64]
mov eax, dword [esi + 0x5c]
mov edx, dword [esi + 8]
cmp eax, dword [edx + 0x308]
setb al
cmp ecx, 8
je 0x8196e7
cmp ecx, 4
jne 0x81969d
mov al, 1
movzx ecx, byte [ebp + 0xc]
and cl, al
cmp cl, 1
jne 0x8196e9
nop
mov ebx, dword [esi + 8]
mov eax, dword [ebx]
mov edi, dword [eax + 8]
mov dword [esi + 0x1f8], 0xffffffff
mov ecx, edi
call dword [0xa37360]
mov dword [esi + 0x1f8], 0x1c
mov ecx, ebx
push 0
push 0
push 3
lea eax, [esi + 0x64]
push eax
call edi
nop
cmp dword [esi + 0x64], 4
sete cl
mov al, 1
jmp 0x8196eb
xor eax, eax
xor ecx, ecx
nop
mov dword [esi + 0x8c], 0
mov dword [esi + 0x90], 0xf
mov byte [esi + 0x7c], 0
mov dword [esi + 0x78], 0x954b60
mov dword [esi + 0xa8], 0
mov dword [esi + 0xac], 0xf
mov byte [esi + 0x98], 0
mov dword [esi + 0x94], 0x954b60
mov edx, dword [ebp + 8]
mov dword [esi + 0x64], edx
mov dword [esi + 0x68], 1
mov dword [esi + 0x6c], 4
test al, al
je 0x81975a
test cl, cl
mov eax, 0x22
mov ecx, 0xb0
cmovne eax, ecx
mov dword [esi + 0x68], eax
nop
mov eax, dword [esi + 0x50]
mov ecx, dword [esi + 0x54]
mov dword [esi], eax
sub ecx, eax
sar ecx, 2
test ecx, ecx
jle 0x819817
nop
mov eax, dword [esi + 8]
mov eax, dword [eax + 0x2c4]
mov edx, dword [esi + 0x28]
mov edi, dword [eax + edx*4]
add edi, 4
xor eax, eax
xor edx, edx
mov dword [esi + 4], 0
jmp 0x81979d
mov eax, ebx
inc edx
add edi, 0xc0
cmp ecx, edx
je 0x819801
nop
mov ebx, dword [edi]
cmp ebx, 0x100
je 0x8197f0
cmp ebx, 0x400
je 0x8197b8
cmp ebx, 0x200
jne 0x819792
test eax, eax
mov ebx, dword [esi]
mov ebx, dword [ebx + edx*4]
je 0x819790
cmp ebx, 0x65
je 0x819792
cmp eax, 0x65
je 0x819790
cmp eax, 0xc8
je 0x819790
cmp ebx, 0xc8
je 0x819792
cmp ebx, eax
mov ebx, 0xe6
cmovne eax, ebx
jmp 0x819792
cmp dword [esi + 4], 0
jne 0x819792
nop
mov ebx, dword [esi]
mov ebx, dword [ebx + edx*4]
mov dword [esi + 4], ebx
jmp 0x819792
test eax, eax
mov ecx, dword [esi + 4]
cmovne ecx, eax
mov eax, ecx
mov dword [esi + 0x1f8], 0x1d
jmp 0x819819
xor eax, eax
nop
mov dword [esi + 0x70], eax
mov eax, dword [esi + 0x14]
mov dword [esi + 0x74], eax
mov eax, dword [esi + 0xcc]
mov dword [esi + 0x1f8], 0x1d
lea ecx, [esi + 0x78]
push eax
call fcn.00798e10
lea ecx, [esi + 0x94]
push dword [esi + 0xc]
call fcn.00798e10
nop
mov byte [esi + 0xb0], 1
mov ebx, dword [esi + 8]
mov eax, dword [ebx]
mov edi, dword [eax + 4]
mov dword [esi + 0x1f8], 0xffffffff
mov ecx, edi
call dword [0xa37360]
mov dword [esi + 0x1f8], 0x1d
mov ecx, ebx
push 0
lea eax, [esi + 0x64]
push eax
push 0
lea eax, [esi + 0xf8]
push eax
call edi
nop
mov eax, dword [esi + 0xf8]
cmp eax, 0x20
je 0x8198af
cmp eax, 0x80
jne 0x8198b7
nop
mov eax, dword [esi + 8]
or dword [eax + 0x70], 0x200
mov dword [esi], 0
jmp 0x8198bd
mov dword [esi], 0x11
jmp 0x8198bd
mov dword [esi], 0
nop
mov eax, dword [esi + 0xac]
cmp eax, 0x10
jb 0x8198ff
nop
mov ecx, dword [esi + 0x98]
lea edx, [eax + 1]
cmp edx, 0x1000
jb 0x8198f4
nop
mov edi, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edi
cmp ecx, 0x20
jae 0x819efa
add eax, 0x24
mov edx, eax
mov ecx, edi
nop
push edx
push ecx
call fcn.0091d82d
add esp, 8
nop
mov dword [esi + 0xa8], 0
mov dword [esi + 0xac], 0xf
mov byte [esi + 0x98], 0
mov eax, dword [esi + 0x90]
cmp eax, 0x10
jb 0x81995f
nop
mov ecx, dword [esi + 0x7c]
lea edx, [eax + 1]
cmp edx, 0x1000
jb 0x819954
nop
mov edi, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edi
cmp ecx, 0x20
jae 0x819f0a
mov ecx, eax
xor ecx, 0x24
and eax, 0x24
lea edx, [ecx + eax*2]
mov ecx, edi
nop
push edx
push ecx
call fcn.0091d82d
add esp, 8
nop
mov eax, dword [esi + 0x44]
cmp eax, 0x10
jb 0x81999b
nop
mov ecx, dword [esi + 0x30]
lea edx, [eax + 1]
cmp edx, 0x1000
jb 0x819990
nop
mov edi, dword [ecx - 4]
add ecx, 0xfffffffc
sub ecx, edi
cmp ecx, 0x20
jae 0x819eda
add eax, 0x24
mov edx, eax
mov ecx, edi
nop
push edx
push ecx
call fcn.0091d82d
add esp, 8
nop
mov eax, dword [esi]
cmp eax, 0x12
je 0x8184dd
cmp eax, 0x11
je 0x8199c0
test eax, eax
je 0x8184dd
jmp 0x8199d4
nop
inc dword [esi + 0x5c]
mov dword [esi + 0x1f8], 0xffffffff
mov dword [esi], 0
nop
mov eax, dword [0xa63acc]
mov edi, dword [0xa63a8c]
mov ebx, dword [esi + 0x1c]
sub edi, ebx
add edi, eax
mov dword [esi + 0x1f8], 0xffffffff
mov ecx, edi
call dword [0xa37360]
lea ecx, [esi + 0x1c4]
call edi
mov eax, dword [esi + 0x110]
mov eax, dword [eax + 4]
mov dword [esi + eax + 0x110], 0x9d5890
mov eax, dword [esi + 0x110]
mov eax, dword [eax + 4]
lea ecx, [eax - 0x68]
mov dword [esi + eax + 0x10c], ecx
mov dword [esi + 0x128], 0x9d5a04
mov eax, dword [0xa63abc]
mov edi, dword [0xa63a98]
sub edi, ebx
add edi, eax
mov ecx, edi
call dword [0xa37360]
lea ecx, [esi + 0x128]
call edi
mov dword [esi + 0x128], 0x955af4
mov ebx, dword [esi + 0x15c]
test ebx, ebx
je 0x819aa8
nop
mov edi, dword [ebx + 4]
test edi, edi
je 0x819a9c
nop
mov eax, dword [edi]
mov ecx, dword [eax + 8]
mov dword [esi + 4], ecx
call dword [0xa37360]
mov ecx, edi
call dword [esi + 4]
test eax, eax
je 0x819a9c
nop
mov ecx, dword [eax]
mov edi, dword [ecx]
mov ecx, edi
mov dword [esi + 4], eax
call dword [0xa37360]
mov ecx, dword [esi + 4]
push 1
call edi
nop
push 8
push ebx
call fcn.0091d82d
add esp, 8
nop
mov dword [esi + 0x178], 0x955078
mov dword [esi + 0x1f8], 0xc
lea eax, [esi + 0x178]
push eax
call fcn.0091edff
add esp, 4
nop
cmp dword [esi], 0
je 0x818105
jmp 0x819be3
nop
mov edi, dword [esi + 4]
mov dword [edi + 8], 5
nop
mov ebx, dword [esi + 8]
mov eax, dword [ebx + 0x2ec]
mov ecx, dword [ebp + 8]
mov edx, dword [esi + 0xc]
mov dword [eax + ecx*4], edx
mov eax, dword [ebx]
mov ecx, dword [eax + 8]
mov dword [esi], ecx
mov dword [esi + 0x1f8], 0xffffffff
call dword [0xa37360]
mov dword [esi + 0x1f8], 0xe
mov ecx, ebx
push 0
push edi
push 0x24
lea eax, [esi + 0x110]
push eax
call dword [esi]
nop
cmp dword [esi + 0x110], 0
jne 0x819be3
nop
mov ebx, dword [esi + 8]
mov eax, dword [ebx]
mov edi, dword [eax + 8]
mov dword [esi + 0x1f8], 0xffffffff
mov ecx, edi
call dword [0xa37360]
mov dword [esi + 0x1f8], 0xe
mov ecx, ebx
push 0
push dword [esi + 0xc4]
push 6
lea eax, [esi + 0x110]
push eax
call edi
nop
mov ebx, dword [esi + 8]
mov eax, dword [ebx]
mov edi, dword [eax + 8]
mov dword [esi + 0x1f8], 0xffffffff
mov ecx, edi
call dword [0xa37360]
mov dword [esi + 0x1f8], 0xe
mov ecx, ebx
push 0
push dword [esi + 0xc0]
push 7
lea eax, [esi + 0x110]
push eax
call edi
nop
mov ebx, dword [esi + 8]
mov eax, dword [ebx]
mov edi, dword [eax + 8]
mov dword [esi + 0x1f8], 0xffffffff
mov ecx, edi
call dword [0xa37360]
mov dword [esi + 0x1f8], 0xe
mov ecx, ebx
push 0
push dword [esi + 4]
push 0x25
lea eax, [esi + 0x110]
push eax
call edi
nop
mov eax, dword [esi + 0x50]
mov dword [esi + 0x18], eax
cmp dword [0xa649d4], 0x37353bb3
mov eax, dword [0x9e93e0]
jne 0x819c1f
nop
mov eax, dword [0x9e9380]
mov dword [esi + 0xc], eax
mov ecx, dword [0x9e93d0]
mov dword [0xa649dc], 0x3039e095
cmp dword [esi + 0x18], 0
jne 0x819c41
jmp 0x819cec
lea eax, [eax + 0x9e93e0]
mov dword [esi + 0x28], eax
mov eax, dword [0x9e9380]
mov dword [esi + 0xc], eax
mov ecx, dword [0x9e93d0]
nop
cmp dword [esi + 0x18], 0
je 0x819cec
nop
mov eax, dword [esi + 0x58]
mov dword [esi + 0x24], eax
mov edx, dword [0xa649c8]
lea edi, [edx + 1]
mov dword [0xa649c8], edi
mov dword [esi + 8], 0
mov dword [esi + 0x60], edx
mov dword [esi + 0x10], edi
test edi, edx
nop
mov dword [esi + 0x20], 0
je 0x819d03
mov ebx, dword [esi + 0x18]
mov edx, dword [esi + 0x24]
sub edx, ebx
mov ecx, edx
cmp edx, 0xfff
jbe 0x819ce1
nop
mov edx, dword [ebx - 4]
mov dword [esi], edx
add ebx, 0xfffffffc
cmp dword [0xa649dc], 0x757bd0d5
mov edi, dword [0x9e93b4]
mov edx, dword [0x9e93b0]
je 0x819cc7
nop
sub edx, dword [esi + 8]
sbb edi, dword [esi + 0x20]
mov eax, dword [esi + 0x10]
test dword [esi + 0x60], eax
mov eax, 0
cmovne edx, eax
cmovne edi, eax
or edi, edx
add dword [0xa8c698], edi
mov edx, dword [esi]
sub ebx, edx
cmp ebx, 0x20
jae 0x819e7a
nop
mov eax, dword [0xa8c6b4]
add ecx, eax
add ecx, 0x23
mov ebx, edx
nop
push ecx
push ebx
call fcn.0091d82d
add esp, 8
nop
mov eax, dword [esi + 0x1f0]
mov dword fs:[0], eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 8
lea ecx, [ecx + 0x9e93d0]
xor ebx, ebx
cmp dword [0xa649d8], 0x7167475b
setne bl
shl ebx, 4
add ebx, 0xfffffff0
xor eax, eax
cmp byte [0xa8c5b8], 0
cmovne ebx, eax
mov eax, dword [ecx + ebx]
cmp dword [esi + 0xc], 0
jle 0x819e08
mov dword [esi + 0xb4], ecx
add ebx, ecx
add ebx, eax
xor edi, edi
mov dword [esi + 8], 0
mov dword [esi + 0x20], 0
mov dword [esi], 0
mov dword [esi + 0x1c], 0
mov eax, 0
jmp 0x819ddf
nop
mov dword [esi + 0x14], ecx
lea ecx, [ebx*8]
mov dword [esi + 4], edx
mov edx, 0xffffffff
shl edx, cl
test cl, 0x20
mov ecx, 0xffffffff
cmovne ecx, edx
mov dword [esi], 0
cmovne edx, eax
not ecx
and dword [esi + 0x14], ecx
not edx
and dword [esi + 4], edx
add ebx, 0xfffffffc
mov ecx, ebx
xor ecx, edi
and ebx, edi
lea edi, [ecx + ebx*2]
mov ecx, dword [esi + 0xb4]
mov edx, dword [esi + 0x1c]
lea ebx, [ecx + edx*4]
add ebx, 4
add ebx, dword [ecx + edx*4 + 4]
mov ecx, dword [esi + 0x14]
inc edx
nop
mov dword [esi + 0x1c], edx
mov edx, dword [esi + 4]
xor dword [esi + 0x20], ecx
xor dword [esi + 8], edx
add edi, 8
cmp edi, dword [esi + 0xc]
jge 0x819c74
nop
mov ecx, dword [esi + 0x28]
lea edx, [ecx + edi]
mov dword [esi + 4], ebx
sub ebx, edx
mov edx, dword [esi]
sbb edx, 0
cmp ebx, 8
sbb edx, 0
mov edx, dword [ecx + edi]
mov ecx, dword [ecx + edi + 4]
jl 0x819d70
mov ebx, dword [esi + 4]
jmp 0x819dcd
mov dword [esi + 0x20], 0
mov dword [esi + 8], 0
jmp 0x819c74
nop
mov dword [esi + 0x1f8], 0
call fcn.00900ce1
nop
mov dword [esi + 0x1f8], 0x1b
call fcn.0091e911
nop
mov dword [esi + 0x1f8], 0x1a
call fcn.0069f310
nop
mov dword [esi + 0x1f8], 4
call fcn.00900ce1
nop
mov eax, dword [0xa63ac0]
add eax, dword [esi + 0x10]
mov ecx, dword [0xa63a84]
add ecx, eax
add ecx, 0x4af0
call dword [0xa37360]
call ecx
nop
mov dword [esi + 0x1f8], 0xd
call fcn.00900ce1
nop
mov dword [esi + 0x1f8], 1
call fcn.00900ce1
nop
mov dword [esi + 0x1f8], 2
call fcn.00900ce1
nop
mov dword [esi + 0x1f8], 3
call fcn.00900ce1
nop
mov dword [esi + 0x1f8], 8
call fcn.00900ce1
nop
mov dword [esi + 0x1f8], 0x15
call fcn.0091e911
nop
mov dword [esi + 0x1f8], 0xb
call fcn.00900ce1
nop
mov dword [esi + 0x1f8], 0x14
call fcn.0069f310
nop
mov dword [esi + 0x1f8], 9
call fcn.00900ce1
nop
mov dword [esi + 0x1f8], 0xa
call fcn.00900ce1
nop
mov dword [esi + 0x1f8], 5
call fcn.00900ce1
nop
mov dword [esi + 0x1f8], 6
call fcn.00900ce1
nop
mov dword [esi + 0x1f8], 7
call fcn.00900ce1
nop word [eax + eax]
push ebp
sub esp, 0x10
lea esi, [ebp - 0x1fc]
mov ebp, dword [esi + 0x1e8]
call fcn.009350a0
nop word cs:[eax + eax]
push ebp
sub esp, 0x10
lea esi, [ebp - 0x1fc]
mov ebp, dword [esi + 0x1e8]
call fcn.009350a0
nop word cs:[eax + eax]
push ebp
sub esp, 0x10
lea esi, [ebp - 0x1fc]
mov ebp, dword [esi + 0x1e8]
call fcn.009350a0
nop word cs:[eax + eax]
push ebp
sub esp, 0x10
lea esi, [ebp - 0x1fc]
mov ebp, dword [esi + 0x1e8]
call fcn.009350a0
nop word cs:[eax + eax]
push ebp
sub esp, 0x10
lea esi, [ebp - 0x1fc]
mov ebp, dword [esi + 0x1e8]
call fcn.009350a0
nop word cs:[eax + eax]
push ebp
sub esp, 0x10
lea esi, [ebp - 0x1fc]
mov ebp, dword [esi + 0x1e8]
call fcn.009350a0
nop word cs:[eax + eax]
push ebp
sub esp, 0x10
lea esi, [ebp - 0x1fc]
mov ebp, dword [esi + 0x1e8]
call fcn.009350a0
nop word cs:[eax + eax]
push ebp
sub esp, 0x10
lea esi, [ebp - 0x1fc]
mov ebp, dword [esi + 0x1e8]
nop
mov eax, dword [0xa63ac8]
mov edi, dword [0xa63a80]
sub edi, dword [esi + 0x1c]
add edi, eax
mov ecx, edi
call dword [0xa37360]
lea ecx, [esi + 0x64]
call edi
add esp, 0x10
pop ebp
ret