Function at 0x6830bc
Capabilities:
Terminate process

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0x24
push ebx
push esi
push edi
lea eax, [esp + 0x18]
push eax
call dword [0x43403c]
mov ecx, dword [esp + 0x18]
mov eax, dword [esp + 0x1c]
sub ecx, 0xd53e8000
push 0
push 0xa
sbb eax, 0x19db1de
push eax
push ecx
call fcn.006a29fc
push 0
push 0xf4240
mov esi, eax
push edx
push esi
call fcn.006a29fc
mov dword [0x444e38], eax
imul eax, eax, 0xf4240
sub esi, eax
mov dword [0x444e3c], esi
jmp 0x68311c
mov eax, dword [0x443b50]
test eax, eax
je 0x6831ee
cmp eax, 3
jge 0x683197
mov eax, dword [0x443bc4]
test eax, eax
je 0x683197
cmp word [eax + 8], 0
jbe 0x683197
push dword [0x43fed8]
add eax, 0xa
push 0x109
push eax
call fcn.006a2d14
mov edi, eax
add esp, 0xc
test edi, edi
js 0x68357e
push 0x43fe68
push edi
call fcn.006aad66
mov esi, eax
add esp, 8
test esi, esi
je 0x683567
push 0
push 0x40
push 0
push esi
call fcn.0069ab71
push dword [0x443d10]
call fcn.006999fd
add esp, 0x14
mov dword [0x443d10], esi
cmp dword [0x443b50], 2
jl 0x6831be
xor edx, edx
lea ecx, [edx + 1]
call fcn.0068e5fc
cmp dword [0x443b50], 3
jge 0x683560
call fcn.00679edc
jmp 0x6831e4
cmp dword [0x43dbc8], 0
mov eax, dword [0x443be0]
jne 0x6831e4
test eax, eax
je 0x6831da
mov eax, dword [eax + 0x80]
test eax, eax
jne 0x6831d0
mov dword [0x43dbc8], 1
mov dword [0x443b50], 0
mov eax, dword [0x443c6c]
test eax, eax
je 0x6832de
mov edi, dword [eax]
mov esi, dword [eax + 4]
cmp edi, 0xffffffff
je 0x6832de
mov eax, dword [0x444e38]
cmp edi, eax
jl 0x6834a5
jg 0x683226
mov ebx, dword [0x444e3c]
cmp esi, ebx
jle 0x6834a5
lea eax, [esp + 0x20]
push eax
call dword [0x43403c]
mov ecx, dword [esp + 0x20]
mov eax, dword [esp + 0x24]
sub ecx, 0xd53e8000
push 0
push 0xa
sbb eax, 0x19db1de
push eax
push ecx
call fcn.006a29fc
push 0
push 0xf4240
mov ebx, eax
push edx
push ebx
call fcn.006a29fc
imul ecx, eax, 0xf4240
mov dword [0x444e38], eax
sub ebx, ecx
mov dword [0x444e3c], ebx
cmp edi, eax
jl 0x6834a5
jg 0x683284
cmp esi, ebx
jle 0x6834a5
cmp esi, ebx
jl 0x68328e
sub esi, ebx
sub edi, eax
jmp 0x683299
sub esi, ebx
sub edi, eax
add esi, 0xf4240
dec edi
lea ecx, [esi + 0x3e7]
mov eax, 0x10624dd3
imul ecx
imul eax, edi, 0x3e8
sar edx, 6
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
add ecx, eax
cmp dword [0x43dbc8], 0
jne 0x6832d0
imul eax, dword [0x440084], 0x3e8
cmp eax, ecx
cmovle ecx, eax
push ecx
call fcn.0068c95c
mov esi, eax
mov dword [esp + 0x14], esi
jmp 0x683302
cmp dword [0x43dbc8], 0
je 0x6832ec
or eax, 0xffffffff
jmp 0x6832f6
imul eax, dword [0x440084], 0x3e8
push eax
call fcn.0068c95c
mov esi, eax
mov dword [esp + 0x14], eax
add esp, 4
lea eax, [esp + 0x28]
push eax
call dword [0x43403c]
mov ecx, dword [esp + 0x28]
mov eax, dword [esp + 0x2c]
sub ecx, 0xd53e8000
push 0
push 0xa
sbb eax, 0x19db1de
push eax
push ecx
call fcn.006a29fc
push 0
push 0xf4240
mov ebx, eax
push edx
push ebx
call fcn.006a29fc
mov dword [0x444e38], eax
imul eax, eax, 0xf4240
sub ebx, eax
mov dword [0x444e3c], ebx
test esi, esi
js 0x6834ff
je 0x6834af
mov ecx, dword [0x443b60]
mov eax, ebx
sar eax, 0x10
xor eax, ebx
mov dword [0x43dbc8], 0
cdq
idiv ecx
xor edi, edi
mov eax, edx
mov dword [esp + 0x14], eax
cmp edi, ecx
jge 0x68311c
add eax, edi
cdq
idiv ecx
mov ebx, edx
test esi, esi
jle 0x68311c
mov eax, dword [0x443b64]
movzx ecx, word [eax + ebx*8 + 6]
test cx, cx
je 0x683482
mov eax, dword [0x443b54]
dec esi
movsx ecx, cx
mov dword [esp + 0x10], esi
mov eax, dword [eax + ebx*4]
test cl, 0x18
jne 0x68340d
test cl, 4
je 0x6833d9
mov esi, eax
test eax, eax
je 0x6833d9
nop
test byte [esi + 2], 4
jne 0x68344d
mov esi, dword [esi + 8]
test esi, esi
jne 0x6833cc
test cl, 1
je 0x683482
mov esi, eax
test eax, eax
je 0x683482
test byte [esi + 2], 1
jne 0x68344d
mov esi, dword [esi + 8]
test esi, esi
jne 0x6833ec
mov ecx, dword [0x443b60]
inc edi
mov esi, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
jmp 0x683381
mov esi, eax
test eax, eax
je 0x683420
test byte [esi + 2], 4
jne 0x68344d
mov esi, dword [esi + 8]
test esi, esi
jne 0x683413
mov esi, eax
test eax, eax
je 0x683482
lea ebx, [ebx]
test byte [esi + 2], 1
jne 0x68344d
mov esi, dword [esi + 8]
test esi, esi
jne 0x68342c
mov ecx, dword [0x443b60]
inc edi
mov esi, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
jmp 0x683381
test esi, esi
je 0x683482
mov eax, dword [esi + 0xc]
push esi
push 0
call eax
add esp, 8
test eax, eax
je 0x683479
cmp dword [0x443b70], 0
mov ecx, esi
je 0x683472
call fcn.00682e1c
jmp 0x683479
mov edx, ebx
call fcn.00682d9c
cmp dword [0x443b70], 0
jne 0x683496
mov ecx, dword [0x443b60]
inc edi
mov esi, dword [esp + 0x10]
mov eax, dword [esp + 0x14]
jmp 0x683381
mov dword [0x443b70], 0
jmp 0x68311c
call fcn.00682eac
jmp 0x68311c
cmp dword [0x43dbc8], 0
jne 0x68311c
cmp dword [0x443c6c], 0
jne 0x6834cc
or edx, 0xffffffff
or ecx, edx
jmp 0x6834d6
mov eax, dword [0x443c6c]
mov edx, dword [eax]
mov ecx, dword [eax + 4]
mov eax, dword [0x444e38]
cmp edx, eax
jl 0x68311c
jg 0x6834f3
mov ebx, dword [0x444e3c]
cmp ecx, ebx
jle 0x68311c
xor ecx, ecx
call fcn.0068e4cc
jmp 0x68311c
call fcn.00698a21
cmp dword [eax], 4
je 0x68311c
call fcn.00698a21
cmp dword [eax], 0xc
jne 0x68353b
call fcn.00679edc
push 0x43db7c
push 1
call fcn.00678ebc
add esp, 8
push 0x3e8
call dword [fcn.00434040]
jmp 0x68311c
call fcn.00698a21
push 0x43dbb8
push dword [eax]
push 1
call fcn.006798ac
add esp, 0xc
mov dword [0x443b50], 3
jmp 0x68311c
pop edi
pop esi
pop ebx
mov esp, ebp
pop ebp
ret
call fcn.00698a21
push edi
mov esi, dword [eax]
call fcn.006a12fa
add esp, 4
call fcn.00698a21
mov dword [eax], esi
call fcn.00698a21
mov ecx, dword [0x443bc4]
add ecx, 0xa
push ecx
push 0x43fe98
push dword [eax]
push 1
call fcn.006798ac
add esp, 0x10
push 1
call fcn.00698820
int3