Function at 0x74c237e3
Capabilities:
Load assembly via iassembly

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
and esp, 0xfffffff8
sub esp, 0xf4c
mov eax, dword [0x74ccd724]
xor eax, esp
mov dword [esp + 0xf48], eax
mov eax, dword [ebp + 8]
push ebx
push esi
mov dword [esp + 0x10], eax
mov ebx, ecx
xor eax, eax
mov dword [esp + 0xc], edx
push edi
lea ecx, [esp + 0x18]
mov dword [esp + 0x34], eax
mov dword [esp + 0x38], eax
mov dword [esp + 0x30], eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x2c], eax
call fcn.74bbd2bb
lea ecx, [esp + 0x40]
call fcn.74bbd2bb
lea ecx, [esp + 0x40]
call fcn.74bbd29e
mov eax, dword [ebx]
lea ecx, [esp + 0x48]
push ecx
push ebx
mov esi, dword [eax + 0x50]
mov ecx, esi
call dword [0x74cce4a8]
call esi
mov edi, eax
test edi, edi
jns 0x74c2391e
xor ebx, ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ebx
cmp dword [0x74ccdac8], ebx
je 0x74c25369
mov ecx, dword [0x74ccdad0]
mov edx, 0x800
mov eax, dword [0x74ccdad4]
mov esi, 0x40000000
and ecx, edx
and eax, esi
or ecx, eax
je 0x74c25369
mov eax, dword [0x74ccdad8]
mov ebx, dword [0x74ccdadc]
and eax, edx
mov edx, ebx
and edx, esi
cmp dword [0x74ccdad8], eax
jne 0x74c25367
cmp ebx, edx
jne 0x74c25367
lea ecx, [esp + 0x50]
call fcn.74b99ab6
lea ecx, [esp + 0x50]
xor ebx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x74c238cd
sub ecx, edx
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
lea eax, [esp + 0x54]
push eax
push 0x19
push 0x74b90740
push 4
lea eax, [esp + 0x28]
push eax
push 1
push 0x74b88558
push 4
lea eax, [esp + 0x34]
push eax
push 5
push 0x74b883a0
push 0x74ccdab8
call fcn.74b99be6
add esp, 0x34
jmp 0x74c25369
push 8
pop eax
lea ecx, [esp + 0x18]
mov word [esp + 0x40], ax
call fcn.74bbd29e
lea eax, [esp + 0x18]
mov edi, 0x74b8ca5c
push eax
push dword [esp + 0x14]
mov ecx, edi
push 0x13
pop edx
call fcn.74bb8714
test eax, eax
js 0x74c23a19
mov eax, dword [ebx]
push dword [esp + 0x20]
push ebx
mov esi, dword [eax + 0x24]
mov ecx, esi
call dword [0x74cce4a8]
call esi
test eax, eax
je 0x74c23a19
mov ecx, dword [esp + 0x14]
xor edx, edx
push eax
push edi
call fcn.74bace64
mov edi, eax
test edi, edi
jns 0x74c23a19
xor ebx, ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ebx
cmp dword [0x74ccdac8], ebx
je 0x74c25369
mov ecx, dword [0x74ccdad0]
mov edx, 0x800
mov eax, dword [0x74ccdad4]
mov esi, 0x40000000
and ecx, edx
and eax, esi
or ecx, eax
je 0x74c25369
mov eax, dword [0x74ccdad8]
mov ebx, dword [0x74ccdadc]
and eax, edx
mov edx, ebx
and edx, esi
cmp dword [0x74ccdad8], eax
jne 0x74c25367
cmp ebx, edx
jne 0x74c25367
lea ecx, [esp + 0xd0]
call fcn.74b99ab6
lea ecx, [esp + 0xd0]
xor ebx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x74c239f6
sub ecx, edx
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
lea eax, [esp + 0xd4]
jmp 0x74c238e8
lea ecx, [esp + 0x18]
call fcn.74bbd29e
lea eax, [esp + 0x18]
mov edi, 0x74b8ca70
push eax
push dword [esp + 0x14]
mov ecx, edi
push 8
pop edx
call fcn.74bb8714
test eax, eax
js 0x74c23b11
mov eax, dword [ebx]
push dword [esp + 0x20]
push ebx
mov esi, dword [eax + 0x2c]
mov ecx, esi
call dword [0x74cce4a8]
call esi
test eax, eax
je 0x74c23b11
mov ecx, dword [esp + 0x14]
xor edx, edx
push eax
push edi
call fcn.74bace64
mov edi, eax
test edi, edi
jns 0x74c23b0c
xor ebx, ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ebx
cmp dword [0x74ccdac8], ebx
je 0x74c25369
mov ecx, dword [0x74ccdad0]
mov edx, 0x800
mov eax, dword [0x74ccdad4]
mov esi, 0x40000000
and ecx, edx
and eax, esi
or ecx, eax
je 0x74c25369
mov eax, dword [0x74ccdad8]
mov ebx, dword [0x74ccdadc]
and eax, edx
mov edx, ebx
and edx, esi
cmp dword [0x74ccdad8], eax
jne 0x74c25367
cmp ebx, edx
jne 0x74c25367
lea ecx, [esp + 0x150]
call fcn.74b99ab6
lea ecx, [esp + 0x150]
xor ebx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x74c23ae9
sub ecx, edx
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
lea eax, [esp + 0x154]
jmp 0x74c238e8
mov edi, 0x74b8ca70
lea ecx, [esp + 0x18]
call fcn.74bbd29e
lea eax, [esp + 0x18]
mov ecx, 0x74b90820
push eax
push dword [esp + 0x14]
push 8
pop edx
call fcn.74bb8714
test eax, eax
js 0x74c23c02
mov eax, dword [ebx]
push dword [esp + 0x20]
push ebx
mov esi, dword [eax + 0x2c]
mov ecx, esi
call dword [0x74cce4a8]
call esi
test eax, eax
je 0x74c23c02
mov ecx, dword [esp + 0x14]
xor edx, edx
push eax
push edi
call fcn.74bace64
mov edi, eax
test edi, edi
jns 0x74c23c02
xor ebx, ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ebx
cmp dword [0x74ccdac8], ebx
je 0x74c25369
mov ecx, dword [0x74ccdad0]
mov edx, 0x800
mov eax, dword [0x74ccdad4]
mov esi, 0x40000000
and ecx, edx
and eax, esi
or ecx, eax
je 0x74c25369
mov eax, dword [0x74ccdad8]
mov ebx, dword [0x74ccdadc]
and eax, edx
mov edx, ebx
and edx, esi
cmp dword [0x74ccdad8], eax
jne 0x74c25367
cmp ebx, edx
jne 0x74c25367
lea ecx, [esp + 0x1d0]
call fcn.74b99ab6
lea ecx, [esp + 0x1d0]
xor ebx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x74c23bdf
sub ecx, edx
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
lea eax, [esp + 0x1d4]
jmp 0x74c238e8
lea ecx, [esp + 0x18]
call fcn.74bbd29e
lea eax, [esp + 0x18]
mov edi, 0x74b8d704
push eax
push dword [esp + 0x14]
mov ecx, edi
push 8
pop edx
call fcn.74bb8714
test eax, eax
js 0x74c23cfa
mov eax, dword [ebx]
push dword [esp + 0x20]
push ebx
mov esi, dword [eax + 0x38]
mov ecx, esi
call dword [0x74cce4a8]
call esi
test eax, eax
je 0x74c23cfa
mov ecx, dword [esp + 0x14]
xor edx, edx
push eax
push edi
call fcn.74bace64
mov edi, eax
test edi, edi
jns 0x74c23cf5
xor ebx, ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ebx
cmp dword [0x74ccdac8], ebx
je 0x74c25369
mov ecx, dword [0x74ccdad0]
mov edx, 0x800
mov eax, dword [0x74ccdad4]
mov esi, 0x40000000
and ecx, edx
and eax, esi
or ecx, eax
je 0x74c25369
mov eax, dword [0x74ccdad8]
mov ebx, dword [0x74ccdadc]
and eax, edx
mov edx, ebx
and edx, esi
cmp dword [0x74ccdad8], eax
jne 0x74c25367
cmp ebx, edx
jne 0x74c25367
lea ecx, [esp + 0x250]
call fcn.74b99ab6
lea ecx, [esp + 0x250]
xor ebx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x74c23cd2
sub ecx, edx
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
lea eax, [esp + 0x254]
jmp 0x74c238e8
mov edi, 0x74b8d704
lea ecx, [esp + 0x18]
call fcn.74bbd29e
lea eax, [esp + 0x18]
mov ecx, 0x74b9084c
push eax
push dword [esp + 0x14]
push 8
pop edx
call fcn.74bb8714
test eax, eax
js 0x74c23deb
mov eax, dword [ebx]
push dword [esp + 0x20]
push ebx
mov esi, dword [eax + 0x38]
mov ecx, esi
call dword [0x74cce4a8]
call esi
test eax, eax
je 0x74c23deb
mov ecx, dword [esp + 0x14]
xor edx, edx
push eax
push edi
call fcn.74bace64
mov edi, eax
test edi, edi
jns 0x74c23deb
xor ebx, ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ebx
cmp dword [0x74ccdac8], ebx
je 0x74c25369
mov ecx, dword [0x74ccdad0]
mov edx, 0x800
mov eax, dword [0x74ccdad4]
mov esi, 0x40000000
and ecx, edx
and eax, esi
or ecx, eax
je 0x74c25369
mov eax, dword [0x74ccdad8]
mov ebx, dword [0x74ccdadc]
and eax, edx
mov edx, ebx
and edx, esi
cmp dword [0x74ccdad8], eax
jne 0x74c25367
cmp ebx, edx
jne 0x74c25367
lea ecx, [esp + 0x2d0]
call fcn.74b99ab6
lea ecx, [esp + 0x2d0]
xor ebx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x74c23dc8
sub ecx, edx
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
lea eax, [esp + 0x2d4]
jmp 0x74c238e8
lea ecx, [esp + 0x18]
call fcn.74bbd29e
lea eax, [esp + 0x18]
mov edi, 0x74b90878
push eax
push dword [esp + 0x14]
mov ecx, edi
push 0xb
pop edx
call fcn.74bb8714
test eax, eax
js 0x74c23ee1
mov eax, dword [ebx]
push dword [esp + 0x20]
push ebx
mov esi, dword [eax + 0xc8]
mov ecx, esi
call dword [0x74cce4a8]
call esi
test eax, eax
je 0x74c23ee1
mov ecx, dword [esp + 0x14]
xor edx, edx
push eax
push edi
call fcn.74bace64
mov edi, eax
test edi, edi
jns 0x74c23ee1
xor ebx, ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ebx
cmp dword [0x74ccdac8], ebx
je 0x74c25369
mov ecx, dword [0x74ccdad0]
mov edx, 0x800
mov eax, dword [0x74ccdad4]
mov esi, 0x40000000
and ecx, edx
and eax, esi
or ecx, eax
je 0x74c25369
mov eax, dword [0x74ccdad8]
mov ebx, dword [0x74ccdadc]
and eax, edx
mov edx, ebx
and edx, esi
cmp dword [0x74ccdad8], eax
jne 0x74c25367
cmp ebx, edx
jne 0x74c25367
lea ecx, [esp + 0x350]
call fcn.74b99ab6
lea ecx, [esp + 0x350]
xor ebx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x74c23ebe
sub ecx, edx
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
lea eax, [esp + 0x354]
jmp 0x74c238e8
lea ecx, [esp + 0x18]
call fcn.74bbd29e
lea eax, [esp + 0x18]
mov edx, 0x2008
push eax
push dword [esp + 0x14]
mov ecx, 0x74b9089c
call fcn.74bb8714
test eax, eax
js 0x74c23fd8
mov eax, dword [ebx]
push dword [esp + 0x20]
push ebx
mov esi, dword [eax + 0x44]
mov ecx, esi
call dword [0x74cce4a8]
call esi
test eax, eax
je 0x74c23fd8
mov ecx, dword [esp + 0x14]
xor edx, edx
push eax
push 0x74b8ca88
call fcn.74bace64
mov edi, eax
test edi, edi
jns 0x74c23fd8
xor ebx, ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ebx
cmp dword [0x74ccdac8], ebx
je 0x74c25369
mov ecx, dword [0x74ccdad0]
mov edx, 0x800
mov eax, dword [0x74ccdad4]
mov esi, 0x40000000
and ecx, edx
and eax, esi
or ecx, eax
je 0x74c25369
mov eax, dword [0x74ccdad8]
mov ebx, dword [0x74ccdadc]
and eax, edx
mov edx, ebx
and edx, esi
cmp dword [0x74ccdad8], eax
jne 0x74c25367
cmp ebx, edx
jne 0x74c25367
lea ecx, [esp + 0x3d0]
call fcn.74b99ab6
lea ecx, [esp + 0x3d0]
xor ebx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x74c23fb5
sub ecx, edx
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
lea eax, [esp + 0x3d4]
jmp 0x74c238e8
lea ecx, [esp + 0x18]
call fcn.74bbd29e
lea eax, [esp + 0x18]
mov edi, 0x74b8e6d0
push eax
push dword [esp + 0x14]
mov ecx, edi
push 8
pop edx
call fcn.74bb8714
test eax, eax
js 0x74c240cb
mov eax, dword [ebx]
push dword [esp + 0x20]
push ebx
mov esi, dword [eax + 0x4c]
mov ecx, esi
call dword [0x74cce4a8]
call esi
test eax, eax
je 0x74c240cb
mov ecx, dword [esp + 0x14]
xor edx, edx
push eax
push edi
call fcn.74bace64
mov edi, eax
test edi, edi
jns 0x74c240cb
xor ebx, ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ebx
cmp dword [0x74ccdac8], ebx
je 0x74c25369
mov ecx, dword [0x74ccdad0]
mov edx, 0x800
mov eax, dword [0x74ccdad4]
mov esi, 0x40000000
and ecx, edx
and eax, esi
or ecx, eax
je 0x74c25369
mov eax, dword [0x74ccdad8]
mov ebx, dword [0x74ccdadc]
and eax, edx
mov edx, ebx
and edx, esi
cmp dword [0x74ccdad8], eax
jne 0x74c25367
cmp ebx, edx
jne 0x74c25367
lea ecx, [esp + 0x450]
call fcn.74b99ab6
lea ecx, [esp + 0x450]
xor ebx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x74c240a8
sub ecx, edx
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
lea eax, [esp + 0x454]
jmp 0x74c238e8
lea ecx, [esp + 0x18]
call fcn.74bbd29e
lea eax, [esp + 0x18]
mov edi, 0x74b8ce3c
push eax
push dword [esp + 0x14]
mov ecx, edi
push 8
pop edx
call fcn.74bb8714
test eax, eax
js 0x74c241be
mov eax, dword [ebx]
push dword [esp + 0x20]
push ebx
mov esi, dword [eax + 0x5c]
mov ecx, esi
call dword [0x74cce4a8]
call esi
test eax, eax
je 0x74c241be
mov ecx, dword [esp + 0x14]
xor edx, edx
push eax
push edi
call fcn.74bace64
mov edi, eax
test edi, edi
jns 0x74c241be
xor ebx, ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ebx
cmp dword [0x74ccdac8], ebx
je 0x74c25369
mov ecx, dword [0x74ccdad0]
mov edx, 0x800
mov eax, dword [0x74ccdad4]
mov esi, 0x40000000
and ecx, edx
and eax, esi
or ecx, eax
je 0x74c25369
mov eax, dword [0x74ccdad8]
mov ebx, dword [0x74ccdadc]
and eax, edx
mov edx, ebx
and edx, esi
cmp dword [0x74ccdad8], eax
jne 0x74c25367
cmp ebx, edx
jne 0x74c25367
lea ecx, [esp + 0x4d0]
call fcn.74b99ab6
lea ecx, [esp + 0x4d0]
xor ebx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x74c2419b
sub ecx, edx
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
lea eax, [esp + 0x4d4]
jmp 0x74c238e8
lea ecx, [esp + 0x18]
call fcn.74bbd29e
lea eax, [esp + 0x18]
mov edi, 0x74b8ca9c
push eax
push dword [esp + 0x14]
mov ecx, edi
push 0xb
pop edx
call fcn.74bb8714
test eax, eax
js 0x74c242b1
mov eax, dword [ebx]
push dword [esp + 0x20]
push ebx
mov esi, dword [eax + 0x64]
mov ecx, esi
call dword [0x74cce4a8]
call esi
test eax, eax
je 0x74c242b1
mov ecx, dword [esp + 0x14]
xor edx, edx
push eax
push edi
call fcn.74bace64
mov edi, eax
test edi, edi
jns 0x74c242b1
xor ebx, ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ebx
cmp dword [0x74ccdac8], ebx
je 0x74c25369
mov ecx, dword [0x74ccdad0]
mov edx, 0x800
mov eax, dword [0x74ccdad4]
mov esi, 0x40000000
and ecx, edx
and eax, esi
or ecx, eax
je 0x74c25369
mov eax, dword [0x74ccdad8]
mov ebx, dword [0x74ccdadc]
and eax, edx
mov edx, ebx
and edx, esi
cmp dword [0x74ccdad8], eax
jne 0x74c25367
cmp ebx, edx
jne 0x74c25367
lea ecx, [esp + 0x550]
call fcn.74b99ab6
lea ecx, [esp + 0x550]
xor ebx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x74c2428e
sub ecx, edx
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
lea eax, [esp + 0x554]
jmp 0x74c238e8
lea ecx, [esp + 0x18]
call fcn.74bbd29e
lea eax, [esp + 0x18]
mov edi, 0x74b8caac
push eax
push dword [esp + 0x14]
mov ecx, edi
push 0x13
pop edx
call fcn.74bb8714
test eax, eax
js 0x74c243a4
mov eax, dword [ebx]
push dword [esp + 0x20]
push ebx
mov esi, dword [eax + 0x6c]
mov ecx, esi
call dword [0x74cce4a8]
call esi
test eax, eax
je 0x74c243a4
mov ecx, dword [esp + 0x14]
xor edx, edx
push eax
push edi
call fcn.74bace64
mov edi, eax
test edi, edi
jns 0x74c243a4
xor ebx, ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ebx
cmp dword [0x74ccdac8], ebx
je 0x74c25369
mov ecx, dword [0x74ccdad0]
mov edx, 0x800
mov eax, dword [0x74ccdad4]
mov esi, 0x40000000
and ecx, edx
and eax, esi
or ecx, eax
je 0x74c25369
mov eax, dword [0x74ccdad8]
mov ebx, dword [0x74ccdadc]
and eax, edx
mov edx, ebx
and edx, esi
cmp dword [0x74ccdad8], eax
jne 0x74c25367
cmp ebx, edx
jne 0x74c25367
lea ecx, [esp + 0x5d0]
call fcn.74b99ab6
lea ecx, [esp + 0x5d0]
xor ebx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x74c24381
sub ecx, edx
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
lea eax, [esp + 0x5d4]
jmp 0x74c238e8
lea ecx, [esp + 0x18]
call fcn.74bbd29e
lea eax, [esp + 0x18]
mov edi, 0x74b8cd2c
push eax
push dword [esp + 0x14]
mov ecx, edi
push 0x13
pop edx
call fcn.74bb8714
test eax, eax
js 0x74c24497
mov eax, dword [ebx]
push dword [esp + 0x20]
push ebx
mov esi, dword [eax + 0x74]
mov ecx, esi
call dword [0x74cce4a8]
call esi
test eax, eax
je 0x74c24497
mov ecx, dword [esp + 0x14]
xor edx, edx
push eax
push edi
call fcn.74bace64
mov edi, eax
test edi, edi
jns 0x74c24497
xor ebx, ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ebx
cmp dword [0x74ccdac8], ebx
je 0x74c25369
mov ecx, dword [0x74ccdad0]
mov edx, 0x800
mov eax, dword [0x74ccdad4]
mov esi, 0x40000000
and ecx, edx
and eax, esi
or ecx, eax
je 0x74c25369
mov eax, dword [0x74ccdad8]
mov ebx, dword [0x74ccdadc]
and eax, edx
mov edx, ebx
and edx, esi
cmp dword [0x74ccdad8], eax
jne 0x74c25367
cmp ebx, edx
jne 0x74c25367
lea ecx, [esp + 0x650]
call fcn.74b99ab6
lea ecx, [esp + 0x650]
xor ebx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x74c24474
sub ecx, edx
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
lea eax, [esp + 0x654]
jmp 0x74c238e8
lea ecx, [esp + 0x18]
call fcn.74bbd29e
lea eax, [esp + 0x18]
mov edi, 0x74b8cad4
push eax
push dword [esp + 0x14]
mov ecx, edi
push 0x13
pop edx
call fcn.74bb8714
test eax, eax
js 0x74c2458a
mov eax, dword [ebx]
push dword [esp + 0x20]
push ebx
mov esi, dword [eax + 0x7c]
mov ecx, esi
call dword [0x74cce4a8]
call esi
test eax, eax
je 0x74c2458a
mov ecx, dword [esp + 0x14]
xor edx, edx
push eax
push edi
call fcn.74bace64
mov edi, eax
test edi, edi
jns 0x74c2458a
xor ebx, ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ebx
cmp dword [0x74ccdac8], ebx
je 0x74c25369
mov ecx, dword [0x74ccdad0]
mov edx, 0x800
mov eax, dword [0x74ccdad4]
mov esi, 0x40000000
and ecx, edx
and eax, esi
or ecx, eax
je 0x74c25369
mov eax, dword [0x74ccdad8]
mov ebx, dword [0x74ccdadc]
and eax, edx
mov edx, ebx
and edx, esi
cmp dword [0x74ccdad8], eax
jne 0x74c25367
cmp ebx, edx
jne 0x74c25367
lea ecx, [esp + 0x6d0]
call fcn.74b99ab6
lea ecx, [esp + 0x6d0]
xor ebx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x74c24567
sub ecx, edx
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
lea eax, [esp + 0x6d4]
jmp 0x74c238e8
lea ecx, [esp + 0x18]
call fcn.74bbd29e
lea eax, [esp + 0x18]
mov edi, 0x74b8caf0
push eax
push dword [esp + 0x14]
mov ecx, edi
push 8
pop edx
call fcn.74bb8714
test eax, eax
js 0x74c24680
mov eax, dword [ebx]
push dword [esp + 0x20]
push ebx
mov esi, dword [eax + 0x8c]
mov ecx, esi
call dword [0x74cce4a8]
call esi
test eax, eax
je 0x74c24680
mov ecx, dword [esp + 0x14]
xor edx, edx
push eax
push edi
call fcn.74bace64
mov edi, eax
test edi, edi
jns 0x74c24680
xor ebx, ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ebx
cmp dword [0x74ccdac8], ebx
je 0x74c25369
mov ecx, dword [0x74ccdad0]
mov edx, 0x800
mov eax, dword [0x74ccdad4]
mov esi, 0x40000000
and ecx, edx
and eax, esi
or ecx, eax
je 0x74c25369
mov eax, dword [0x74ccdad8]
mov ebx, dword [0x74ccdadc]
and eax, edx
mov edx, ebx
and edx, esi
cmp dword [0x74ccdad8], eax
jne 0x74c25367
cmp ebx, edx
jne 0x74c25367
lea ecx, [esp + 0x750]
call fcn.74b99ab6
lea ecx, [esp + 0x750]
xor ebx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x74c2465d
sub ecx, edx
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
lea eax, [esp + 0x754]
jmp 0x74c238e8
lea ecx, [esp + 0x18]
call fcn.74bbd29e
lea eax, [esp + 0x18]
mov edi, 0x74b8cb0c
push eax
push dword [esp + 0x14]
mov ecx, edi
push 3
pop edx
call fcn.74bb8714
test eax, eax
js 0x74c24776
mov eax, dword [ebx]
push dword [esp + 0x20]
push ebx
mov esi, dword [eax + 0x94]
mov ecx, esi
call dword [0x74cce4a8]
call esi
test eax, eax
je 0x74c24776
mov ecx, dword [esp + 0x14]
xor edx, edx
push eax
push edi
call fcn.74bace64
mov edi, eax
test edi, edi
jns 0x74c24776
xor ebx, ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ebx
cmp dword [0x74ccdac8], ebx
je 0x74c25369
mov ecx, dword [0x74ccdad0]
mov edx, 0x800
mov eax, dword [0x74ccdad4]
mov esi, 0x40000000
and ecx, edx
and eax, esi
or ecx, eax
je 0x74c25369
mov eax, dword [0x74ccdad8]
mov ebx, dword [0x74ccdadc]
and eax, edx
mov edx, ebx
and edx, esi
cmp dword [0x74ccdad8], eax
jne 0x74c25367
cmp ebx, edx
jne 0x74c25367
lea ecx, [esp + 0x7d0]
call fcn.74b99ab6
lea ecx, [esp + 0x7d0]
xor ebx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x74c24753
sub ecx, edx
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
lea eax, [esp + 0x7d4]
jmp 0x74c238e8
lea ecx, [esp + 0x18]
call fcn.74bbd29e
lea eax, [esp + 0x18]
mov edi, 0x74b88568
push eax
push dword [esp + 0x14]
mov ecx, edi
push 8
pop edx
call fcn.74bb8714
test eax, eax
js 0x74c2486c
mov eax, dword [ebx]
push dword [esp + 0x20]
push ebx
mov esi, dword [eax + 0x9c]
mov ecx, esi
call dword [0x74cce4a8]
call esi
test eax, eax
je 0x74c2486c
mov ecx, dword [esp + 0x14]
xor edx, edx
push eax
push edi
call fcn.74bace64
mov edi, eax
test edi, edi
jns 0x74c2486c
xor ebx, ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ebx
cmp dword [0x74ccdac8], ebx
je 0x74c25369
mov ecx, dword [0x74ccdad0]
mov edx, 0x800
mov eax, dword [0x74ccdad4]
mov esi, 0x40000000
and ecx, edx
and eax, esi
or ecx, eax
je 0x74c25369
mov eax, dword [0x74ccdad8]
mov ebx, dword [0x74ccdadc]
and eax, edx
mov edx, ebx
and edx, esi
cmp dword [0x74ccdad8], eax
jne 0x74c25367
cmp ebx, edx
jne 0x74c25367
lea ecx, [esp + 0x850]
call fcn.74b99ab6
lea ecx, [esp + 0x850]
xor ebx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x74c24849
sub ecx, edx
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
lea eax, [esp + 0x854]
jmp 0x74c238e8
lea ecx, [esp + 0x18]
call fcn.74bbd29e
lea eax, [esp + 0x18]
mov edi, 0x74b8cb34
push eax
push dword [esp + 0x14]
mov ecx, edi
push 8
pop edx
call fcn.74bb8714
test eax, eax
js 0x74c24962
mov eax, dword [ebx]
push dword [esp + 0x20]
push ebx
mov esi, dword [eax + 0xa4]
mov ecx, esi
call dword [0x74cce4a8]
call esi
test eax, eax
je 0x74c24962
mov ecx, dword [esp + 0x14]
xor edx, edx
push eax
push edi
call fcn.74bace64
mov edi, eax
test edi, edi
jns 0x74c24962
xor ebx, ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ebx
cmp dword [0x74ccdac8], ebx
je 0x74c25369
mov ecx, dword [0x74ccdad0]
mov edx, 0x800
mov eax, dword [0x74ccdad4]
mov esi, 0x40000000
and ecx, edx
and eax, esi
or ecx, eax
je 0x74c25369
mov eax, dword [0x74ccdad8]
mov ebx, dword [0x74ccdadc]
and eax, edx
mov edx, ebx
and edx, esi
cmp dword [0x74ccdad8], eax
jne 0x74c25367
cmp ebx, edx
jne 0x74c25367
lea ecx, [esp + 0x8d0]
call fcn.74b99ab6
lea ecx, [esp + 0x8d0]
xor ebx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x74c2493f
sub ecx, edx
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
lea eax, [esp + 0x8d4]
jmp 0x74c238e8
lea ecx, [esp + 0x18]
call fcn.74bbd29e
lea eax, [esp + 0x18]
mov edi, 0x74b8e5a4
push eax
push dword [esp + 0x14]
mov ecx, edi
push 0xb
pop edx
call fcn.74bb8714
test eax, eax
js 0x74c24a58
mov eax, dword [ebx]
push dword [esp + 0x20]
push ebx
mov esi, dword [eax + 0xac]
mov ecx, esi
call dword [0x74cce4a8]
call esi
test eax, eax
je 0x74c24a58
mov ecx, dword [esp + 0x14]
xor edx, edx
push eax
push edi
call fcn.74bace64
mov edi, eax
test edi, edi
jns 0x74c24a58
xor ebx, ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ebx
cmp dword [0x74ccdac8], ebx
je 0x74c25369
mov ecx, dword [0x74ccdad0]
mov edx, 0x800
mov eax, dword [0x74ccdad4]
mov esi, 0x40000000
and ecx, edx
and eax, esi
or ecx, eax
je 0x74c25369
mov eax, dword [0x74ccdad8]
mov ebx, dword [0x74ccdadc]
and eax, edx
mov edx, ebx
and edx, esi
cmp dword [0x74ccdad8], eax
jne 0x74c25367
cmp ebx, edx
jne 0x74c25367
lea ecx, [esp + 0x950]
call fcn.74b99ab6
lea ecx, [esp + 0x950]
xor ebx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x74c24a35
sub ecx, edx
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
lea eax, [esp + 0x954]
jmp 0x74c238e8
lea ecx, [esp + 0x18]
call fcn.74bbd29e
lea eax, [esp + 0x18]
mov edi, 0x74b88614
push eax
push dword [esp + 0x14]
mov ecx, edi
push 8
pop edx
call fcn.74bb8714
test eax, eax
js 0x74c24b4e
mov eax, dword [ebx]
push dword [esp + 0x20]
push ebx
mov esi, dword [eax + 0xb4]
mov ecx, esi
call dword [0x74cce4a8]
call esi
test eax, eax
je 0x74c24b4e
mov ecx, dword [esp + 0x14]
xor edx, edx
push eax
push edi
call fcn.74bace64
mov edi, eax
test edi, edi
jns 0x74c24b4e
xor ebx, ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ebx
cmp dword [0x74ccdac8], ebx
je 0x74c25369
mov ecx, dword [0x74ccdad0]
mov edx, 0x800
mov eax, dword [0x74ccdad4]
mov esi, 0x40000000
and ecx, edx
and eax, esi
or ecx, eax
je 0x74c25369
mov eax, dword [0x74ccdad8]
mov ebx, dword [0x74ccdadc]
and eax, edx
mov edx, ebx
and edx, esi
cmp dword [0x74ccdad8], eax
jne 0x74c25367
cmp ebx, edx
jne 0x74c25367
lea ecx, [esp + 0x9d0]
call fcn.74b99ab6
lea ecx, [esp + 0x9d0]
xor ebx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x74c24b2b
sub ecx, edx
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
lea eax, [esp + 0x9d4]
jmp 0x74c238e8
lea ecx, [esp + 0x18]
call fcn.74bbd29e
lea eax, [esp + 0x18]
mov edi, 0x74b8e5c0
push eax
push dword [esp + 0x14]
mov ecx, edi
push 8
pop edx
call fcn.74bb8714
test eax, eax
js 0x74c24c44
mov eax, dword [ebx]
push dword [esp + 0x20]
push ebx
mov esi, dword [eax + 0xbc]
mov ecx, esi
call dword [0x74cce4a8]
call esi
test eax, eax
je 0x74c24c44
mov ecx, dword [esp + 0x14]
xor edx, edx
push eax
push edi
call fcn.74bace64
mov edi, eax
test edi, edi
jns 0x74c24c44
xor ebx, ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ebx
cmp dword [0x74ccdac8], ebx
je 0x74c25369
mov ecx, dword [0x74ccdad0]
mov edx, 0x800
mov eax, dword [0x74ccdad4]
mov esi, 0x40000000
and ecx, edx
and eax, esi
or ecx, eax
je 0x74c25369
mov eax, dword [0x74ccdad8]
mov ebx, dword [0x74ccdadc]
and eax, edx
mov edx, ebx
and edx, esi
cmp dword [0x74ccdad8], eax
jne 0x74c25367
cmp ebx, edx
jne 0x74c25367
lea ecx, [esp + 0xa50]
call fcn.74b99ab6
lea ecx, [esp + 0xa50]
xor ebx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x74c24c21
sub ecx, edx
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
lea eax, [esp + 0xa54]
jmp 0x74c238e8
lea ecx, [esp + 0x18]
call fcn.74bbd29e
lea eax, [esp + 0x18]
mov edi, 0x74b908f4
push eax
push dword [esp + 0x14]
mov ecx, edi
push 8
pop edx
call fcn.74bb8714
test eax, eax
js 0x74c24d3a
mov eax, dword [ebx]
push dword [esp + 0x20]
push ebx
mov esi, dword [eax + 0xd8]
mov ecx, esi
call dword [0x74cce4a8]
call esi
test eax, eax
je 0x74c24d3a
mov ecx, dword [esp + 0x14]
xor edx, edx
push eax
push edi
call fcn.74bace64
mov edi, eax
test edi, edi
jns 0x74c24d3a
xor ebx, ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ebx
cmp dword [0x74ccdac8], ebx
je 0x74c25369
mov ecx, dword [0x74ccdad0]
mov edx, 0x800
mov eax, dword [0x74ccdad4]
mov esi, 0x40000000
and ecx, edx
and eax, esi
or ecx, eax
je 0x74c25369
mov eax, dword [0x74ccdad8]
mov ebx, dword [0x74ccdadc]
and eax, edx
mov edx, ebx
and edx, esi
cmp dword [0x74ccdad8], eax
jne 0x74c25367
cmp ebx, edx
jne 0x74c25367
lea ecx, [esp + 0xad0]
call fcn.74b99ab6
lea ecx, [esp + 0xad0]
xor ebx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x74c24d17
sub ecx, edx
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
lea eax, [esp + 0xad4]
jmp 0x74c238e8
lea ecx, [esp + 0x18]
call fcn.74bbd29e
lea eax, [esp + 0x18]
mov edi, 0x74b90908
push eax
push dword [esp + 0x14]
mov ecx, edi
push 0xb
pop edx
call fcn.74bb8714
test eax, eax
js 0x74c24e30
mov eax, dword [ebx]
push dword [esp + 0x20]
push ebx
mov esi, dword [eax + 0xe0]
mov ecx, esi
call dword [0x74cce4a8]
call esi
test eax, eax
je 0x74c24e30
mov ecx, dword [esp + 0x14]
xor edx, edx
push eax
push edi
call fcn.74bace64
mov edi, eax
test edi, edi
jns 0x74c24e30
xor ebx, ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ebx
cmp dword [0x74ccdac8], ebx
je 0x74c25369
mov ecx, dword [0x74ccdad0]
mov edx, 0x800
mov eax, dword [0x74ccdad4]
mov esi, 0x40000000
and ecx, edx
and eax, esi
or ecx, eax
je 0x74c25369
mov eax, dword [0x74ccdad8]
mov ebx, dword [0x74ccdadc]
and eax, edx
mov edx, ebx
and edx, esi
cmp dword [0x74ccdad8], eax
jne 0x74c25367
cmp ebx, edx
jne 0x74c25367
lea ecx, [esp + 0xb50]
call fcn.74b99ab6
lea ecx, [esp + 0xb50]
xor ebx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x74c24e0d
sub ecx, edx
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
lea eax, [esp + 0xb54]
jmp 0x74c238e8
mov eax, dword [ebx]
lea ecx, [esp + 0x34]
push ecx
push ebx
mov esi, dword [eax + 0x1c]
mov ecx, esi
call dword [0x74cce4a8]
call esi
mov edi, eax
test edi, edi
jns 0x74c24ee6
xor ebx, ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ebx
cmp dword [0x74ccdac8], ebx
je 0x74c25369
mov ecx, dword [0x74ccdad0]
mov edx, 0x800
mov eax, dword [0x74ccdad4]
mov esi, 0x40000000
and ecx, edx
and eax, esi
or ecx, eax
je 0x74c25369
mov eax, dword [0x74ccdad8]
mov ebx, dword [0x74ccdadc]
and eax, edx
mov edx, ebx
and edx, esi
cmp dword [0x74ccdad8], eax
jne 0x74c25367
cmp ebx, edx
jne 0x74c25367
lea ecx, [esp + 0xbd0]
call fcn.74b99ab6
lea ecx, [esp + 0xbd0]
xor ebx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x74c24ec3
sub ecx, edx
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
lea eax, [esp + 0xbd4]
jmp 0x74c238e8
push dword [esp + 0x14]
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x38]
call fcn.74c36972
mov edi, eax
test edi, edi
jns 0x74c24f98
xor ebx, ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ebx
cmp dword [0x74ccdac8], ebx
je 0x74c25369
mov ecx, dword [0x74ccdad0]
mov edx, 0x800
mov eax, dword [0x74ccdad4]
mov esi, 0x40000000
and ecx, edx
and eax, esi
or ecx, eax
je 0x74c25369
mov eax, dword [0x74ccdad8]
mov ebx, dword [0x74ccdadc]
and eax, edx
mov edx, ebx
and edx, esi
cmp dword [0x74ccdad8], eax
jne 0x74c25367
cmp ebx, edx
jne 0x74c25367
lea ecx, [esp + 0xc50]
call fcn.74b99ab6
lea ecx, [esp + 0xc50]
xor ebx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x74c24f75
sub ecx, edx
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
lea eax, [esp + 0xc54]
jmp 0x74c238e8
mov eax, dword [ebx]
lea ecx, [esp + 0x38]
push ecx
push ebx
mov esi, dword [eax + 0xc0]
mov ecx, esi
call dword [0x74cce4a8]
call esi
mov edi, eax
test edi, edi
jns 0x74c25051
xor ebx, ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ebx
cmp dword [0x74ccdac8], ebx
je 0x74c25369
mov ecx, dword [0x74ccdad0]
mov edx, 0x800
mov eax, dword [0x74ccdad4]
mov esi, 0x40000000
and ecx, edx
and eax, esi
or ecx, eax
je 0x74c25369
mov eax, dword [0x74ccdad8]
mov ebx, dword [0x74ccdadc]
and eax, edx
mov edx, ebx
and edx, esi
cmp dword [0x74ccdad8], eax
jne 0x74c25367
cmp ebx, edx
jne 0x74c25367
lea ecx, [esp + 0xcd0]
call fcn.74b99ab6
lea ecx, [esp + 0xcd0]
xor ebx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x74c2502e
sub ecx, edx
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
lea eax, [esp + 0xcd4]
jmp 0x74c238e8
mov edx, dword [esp + 0x10]
push ecx
push dword [esp + 0x18]
mov ecx, dword [esp + 0x40]
call fcn.74c3b623
mov edi, eax
test edi, edi
jns 0x74c25104
xor ebx, ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ebx
cmp dword [0x74ccdac8], ebx
je 0x74c25369
mov ecx, dword [0x74ccdad0]
mov edx, 0x800
mov eax, dword [0x74ccdad4]
mov esi, 0x40000000
and ecx, edx
and eax, esi
or ecx, eax
je 0x74c25369
mov eax, dword [0x74ccdad8]
mov ebx, dword [0x74ccdadc]
and eax, edx
mov edx, ebx
and edx, esi
cmp dword [0x74ccdad8], eax
jne 0x74c25367
cmp ebx, edx
jne 0x74c25367
lea ecx, [esp + 0xd50]
call fcn.74b99ab6
lea ecx, [esp + 0xd50]
xor ebx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x74c250e1
sub ecx, edx
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
lea eax, [esp + 0xd54]
jmp 0x74c238e8
xor ecx, ecx
call fcn.74b99a27
push ecx
mov ecx, 0x74b9092c
call fcn.74bad5e1
mov edi, eax
mov dword [esp + 0x3c], edi
test edi, edi
jne 0x74c251c0
xor ebx, ebx
mov edi, 0x8007000e
mov dword [esp + 0x14], ebx
mov dword [esp + 0x10], edi
cmp dword [0x74ccdac8], ebx
je 0x74c25369
mov ecx, dword [0x74ccdad0]
mov edx, 0x800
mov eax, dword [0x74ccdad4]
mov esi, 0x40000000
and ecx, edx
and eax, esi
or ecx, eax
je 0x74c25369
mov eax, dword [0x74ccdad8]
mov ebx, dword [0x74ccdadc]
and eax, edx
mov edx, ebx
and edx, esi
cmp dword [0x74ccdad8], eax
jne 0x74c25367
cmp ebx, edx
jne 0x74c25367
lea ecx, [esp + 0xdd0]
call fcn.74b99ab6
lea ecx, [esp + 0xdd0]
xor ebx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x74c2519d
sub ecx, edx
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
lea eax, [esp + 0xdd4]
jmp 0x74c238e8
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x2c]
push ecx
push edi
push eax
mov esi, dword [eax]
mov esi, dword [esi + 0x94]
mov ecx, esi
call dword [0x74cce4a8]
call esi
mov edi, eax
test edi, edi
jns 0x74c2527e
xor ebx, ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ebx
cmp dword [0x74ccdac8], ebx
je 0x74c25369
mov ecx, dword [0x74ccdad0]
mov edx, 0x800
mov eax, dword [0x74ccdad4]
mov esi, 0x40000000
and ecx, edx
and eax, esi
or ecx, eax
je 0x74c25369
mov eax, dword [0x74ccdad8]
mov ebx, dword [0x74ccdadc]
and eax, edx
mov edx, ebx
and edx, esi
cmp dword [0x74ccdad8], eax
jne 0x74c25367
cmp ebx, edx
jne 0x74c25367
lea ecx, [esp + 0xe50]
call fcn.74b99ab6
lea ecx, [esp + 0xe50]
xor ebx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x74c2525b
sub ecx, edx
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
lea eax, [esp + 0xe54]
jmp 0x74c238e8
cmp edi, 1
je 0x74c25361
cmp dword [esp + 0x2c], 0
je 0x74c25361
mov eax, dword [ebx]
lea ecx, [esp + 0x30]
push ecx
push ebx
mov esi, dword [eax + 0xe4]
mov ecx, esi
call dword [0x74cce4a8]
call esi
test eax, eax
js 0x74c25361
mov ecx, dword [esp + 0x30]
test ecx, ecx
je 0x74c25361
mov edx, dword [esp + 0x2c]
push 0x74b9092c
push dword [esp + 0x18]
call fcn.74c44753
mov edi, eax
test edi, edi
jns 0x74c25361
xor ebx, ebx
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], ebx
cmp dword [0x74ccdac8], ebx
je 0x74c25369
mov ecx, dword [0x74ccdad0]
mov edx, 0x800
mov eax, dword [0x74ccdad4]
mov esi, 0x40000000
and ecx, edx
and eax, esi
or ecx, eax
je 0x74c25369
mov eax, dword [0x74ccdad8]
mov ebx, dword [0x74ccdadc]
and eax, edx
mov edx, ebx
and edx, esi
cmp dword [0x74ccdad8], eax
jne 0x74c25367
cmp ebx, edx
jne 0x74c25367
lea ecx, [esp + 0xed0]
call fcn.74b99ab6
lea ecx, [esp + 0xed0]
xor ebx, ebx
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
cmp ax, bx
jne 0x74c2533e
sub ecx, edx
sar ecx, 1
lea eax, [ecx*2 + 2]
push eax
lea eax, [esp + 0xed4]
jmp 0x74c238e8
xor ebx, ebx
mov edi, ebx
jmp 0x74c25369
xor ebx, ebx
mov ecx, dword [esp + 0x3c]
call fcn.74b99a27
mov ecx, dword [esp + 0x2c]
test ecx, ecx
je 0x74c2538e
mov eax, dword [ecx]
push ecx
mov esi, dword [eax + 8]
mov ecx, esi
call dword [0x74cce4a8]
call esi
mov dword [esp + 0x2c], ebx
mov ecx, dword [esp + 0x30]
test ecx, ecx
je 0x74c253aa
mov eax, dword [ecx]
push ecx
mov esi, dword [eax + 8]
mov ecx, esi
call dword [0x74cce4a8]
call esi
mov dword [esp + 0x30], ebx
mov ecx, dword [esp + 0x34]
test ecx, ecx
je 0x74c253c6
mov eax, dword [ecx]
push ecx
mov esi, dword [eax + 8]
mov ecx, esi
call dword [0x74cce4a8]
call esi
mov dword [esp + 0x34], ebx
mov ecx, dword [esp + 0x38]
test ecx, ecx
je 0x74c253e2
mov eax, dword [ecx]
push ecx
mov esi, dword [eax + 8]
mov ecx, esi
call dword [0x74cce4a8]
call esi
mov dword [esp + 0x38], ebx
lea ecx, [esp + 0x18]
call fcn.74bbd29e
lea ecx, [esp + 0x40]
call fcn.74bbd29e
mov ecx, dword [esp + 0xf54]
mov eax, edi
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.74b98d40
mov esp, ebp
pop ebp
ret 4