Function at 0x4189e0
Capabilities:
Get disk size

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x465d80
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x100
mov dword [ebp - 0x10], esp
mov dword [ebp - 0x24], edi
mov dword [ebp - 0x20], esi
mov dword [ebp - 0x1c], ebx
xor eax, eax
mov dword [ebp - 0x50], 0xf
mov dword [ebp - 0x54], eax
mov byte [ebp - 0x64], al
mov dword [ebp - 4], 0
lea eax, [ebp - 0x68]
add esp, 0xfffffff8
mov dword [esp], 0x467a04
mov dword [esp + 4], eax
call fcn.0041ae30
add esp, 8
movzx eax, al
test eax, eax
je 0x418a61
lea eax, [ebp - 0x68]
add esp, 0xfffffff4
mov dword [esp], 0x4798c4
mov dword [esp + 4], eax
mov dword [esp + 8], 0x401820
call fcn.0041cf50
add esp, 0xc
lea eax, [ebp - 0x68]
add esp, 0xfffffff8
mov dword [esp], 0x467a10
mov dword [esp + 4], eax
call fcn.0041ae30
add esp, 8
movzx eax, al
test eax, eax
je 0x418aa2
lea eax, [ebp - 0x68]
add esp, 0xfffffff4
mov dword [esp], 0x4798a0
mov dword [esp + 4], eax
mov dword [esp + 8], 0x401820
call fcn.004197e0
add esp, 0xc
lea eax, [ebp - 0x68]
add esp, 0xfffffff8
mov dword [esp], 0x467a24
mov dword [esp + 4], eax
call fcn.0041ae30
add esp, 8
movzx eax, al
test eax, eax
je 0x418ae3
lea eax, [ebp - 0x68]
add esp, 0xfffffff4
mov dword [esp], 0x4798a4
mov dword [esp + 4], eax
mov dword [esp + 8], 0x401820
call fcn.004197e0
add esp, 0xc
lea eax, [ebp - 0x68]
add esp, 0xfffffff8
mov dword [esp], 0x467a34
mov dword [esp + 4], eax
call fcn.0041ae30
add esp, 8
movzx eax, al
test eax, eax
je 0x418b24
lea eax, [ebp - 0x68]
add esp, 0xfffffff4
mov dword [esp], 0x4798c0
mov dword [esp + 4], eax
mov dword [esp + 8], 0x401820
call fcn.004197e0
add esp, 0xc
lea eax, [ebp - 0x68]
add esp, 0xfffffff8
mov dword [esp], 0x467a48
mov dword [esp + 4], eax
call fcn.0041ae30
add esp, 8
movzx eax, al
test eax, eax
je 0x418b65
lea eax, [ebp - 0x68]
add esp, 0xfffffff4
mov dword [esp], 0x4798bc
mov dword [esp + 4], eax
mov dword [esp + 8], 0x401820
call fcn.004197e0
add esp, 0xc
lea eax, [ebp - 0x68]
add esp, 0xfffffff8
mov dword [esp], 0x467a54
mov dword [esp + 4], eax
call fcn.0041ae30
add esp, 8
movzx eax, al
test eax, eax
je 0x418ba6
lea eax, [ebp - 0x68]
add esp, 0xfffffff4
mov dword [esp], 0x4798b8
mov dword [esp + 4], eax
mov dword [esp + 8], 0x401820
call fcn.004197e0
add esp, 0xc
lea eax, [ebp - 0x68]
add esp, 0xfffffff8
mov dword [esp], 0x467a6c
mov dword [esp + 4], eax
call fcn.0041ae30
add esp, 8
movzx eax, al
test eax, eax
je 0x418be7
lea eax, [ebp - 0x68]
add esp, 0xfffffff4
mov dword [esp], 0x4798b0
mov dword [esp + 4], eax
mov dword [esp + 8], 0x401820
call fcn.0041b910
add esp, 0xc
lea eax, [ebp - 0x68]
add esp, 0xfffffff8
mov dword [esp], 0x467a78
mov dword [esp + 4], eax
call fcn.0041ae30
add esp, 8
movzx eax, al
test eax, eax
je 0x418c28
lea eax, [ebp - 0x68]
add esp, 0xfffffff4
mov dword [esp], 0x4798a8
mov dword [esp + 4], eax
mov dword [esp + 8], 0x401820
call fcn.0041b910
add esp, 0xc
lea eax, [ebp - 0x68]
add esp, 0xfffffff8
mov dword [esp], 0x467a88
mov dword [esp + 4], eax
call fcn.0041ae30
add esp, 8
movzx eax, al
test eax, eax
je 0x418d71
mov dword [ebp - 4], 5
mov dword [ebp - 0x94], 0xf
lea edx, [ebp - 0xac]
xor eax, eax
add esp, 0xfffffff4
mov dword [ebp - 0x98], eax
mov dword [esp], edx
mov byte [ebp - 0xa8], al
lea ecx, [ebp - 0x68]
mov dword [esp + 8], 0x401820
mov dword [esp + 4], ecx
call fcn.0041d860
add esp, 0xc
mov ebx, dword [ebp - 0x98]
mov eax, dword [ebp - 0x94]
cmp eax, 0x10
jb 0x418ca7
mov edx, dword [ebp - 0xa8]
jmp 0x418cad
lea edx, [ebp - 0xa8]
cmp ebx, 1
mov eax, ebx
jb 0x418cb9
mov eax, 1
push eax
push 0x467a94
push edx
call fcn.00461d10
add esp, 0xc
test eax, eax
jne 0x418ce0
cmp ebx, 1
jae 0x418cd8
mov eax, 0xffffffff
jmp 0x418ce0
xor eax, eax
cmp ebx, 1
setne al
test eax, eax
je 0x418d40
mov dword [ebp - 0x44], 0x4798d4
lea edx, [ebp - 0xac]
mov eax, 0x4798d4
cmp eax, edx
mov dword [ebp - 0x3c], 0
mov dword [ebp - 0x40], edx
mov dword [ebp - 0x48], ebx
je 0x4193ce
mov dword [ebp - 0x4c], ebx
cmp ebx, 0xfffffffe
jbe 0x418d1b
call fcn.00461214
mov ebx, dword [ebp - 0x4c]
mov edi, dword [0x4798ec]
cmp edi, ebx
jb 0x4191f9
test ebx, ebx
je 0x4191d6
test ebx, ebx
ja 0x41917b
mov byte [0x4750c8], 0
mov dword [ebp - 4], 0
mov eax, dword [ebp - 0x94]
cmp eax, 0x10
jae 0x419463
mov dword [ebp - 0x94], 0xf
xor eax, eax
mov dword [ebp - 0x98], eax
mov byte [ebp - 0x18], al
mov byte [ebp - 0xa8], al
lea eax, [ebp - 0x68]
add esp, 0xfffffff8
mov dword [esp], 0x467a98
mov dword [esp + 4], eax
call fcn.0041ae30
add esp, 8
movzx eax, al
test eax, eax
je 0x41907d
mov ecx, 0x467aa0
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x418db1
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x418d9c
dec eax
mov ebx, dword [ebp - 0x54]
mov esi, eax
mov eax, dword [ebp - 0x50]
cmp eax, 0x10
jb 0x418dc3
mov edx, dword [ebp - 0x64]
jmp 0x418dc6
lea edx, [ebp - 0x64]
cmp ebx, esi
mov eax, ebx
jb 0x418dce
mov eax, esi
push eax
push ecx
push edx
call fcn.00461d10
add esp, 0xc
test eax, eax
jne 0x418def
cmp ebx, esi
jae 0x418de8
mov eax, 0xffffffff
jmp 0x418def
xor eax, eax
cmp ebx, esi
setne al
test eax, eax
jne 0x418e64
mov eax, dword [0x479994]
cmp eax, 0x10
jb 0x418e05
mov edi, dword [0x479980]
jmp 0x418e0a
mov edi, 0x479980
mov esi, dword [0x4798a8]
mov ebx, dword [0x4798ac]
lea ecx, [ebp - 0x70]
lea edx, [ebp - 0x78]
lea eax, [ebp - 0x80]
push eax
push edx
push ecx
push edi
call dword [sym.imp.KERNEL32.dll_GetDiskFreeSpaceExA]
test eax, eax
je 0x418e39
mov eax, dword [ebp - 0x70]
mov edx, dword [ebp - 0x6c]
sub eax, esi
sbb edx, ebx
jb 0x418e40
mov eax, 1
jmp 0x418e42
xor eax, eax
test eax, eax
jne 0x418e55
mov dword [0x4798c8], 1
jmp 0x41907d
mov dword [0x4798c8], 4
jmp 0x41907d
mov ecx, 0x467aac
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x418e80
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x418e6b
dec eax
mov ebx, dword [ebp - 0x54]
mov esi, eax
mov eax, dword [ebp - 0x50]
cmp eax, 0x10
jb 0x418e92
mov edx, dword [ebp - 0x64]
jmp 0x418e95
lea edx, [ebp - 0x64]
cmp ebx, esi
mov eax, ebx
jb 0x418e9d
mov eax, esi
push eax
push ecx
push edx
call fcn.00461d10
add esp, 0xc
test eax, eax
jne 0x418ebe
cmp ebx, esi
jae 0x418eb7
mov eax, 0xffffffff
jmp 0x418ebe
xor eax, eax
cmp ebx, esi
setne al
test eax, eax
jne 0x418ed1
mov dword [0x4798c8], 2
jmp 0x41907d
mov ecx, 0x467ab8
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x418eed
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x418ed8
dec eax
mov ebx, dword [ebp - 0x54]
mov esi, eax
mov eax, dword [ebp - 0x50]
cmp eax, 0x10
jb 0x418eff
mov edx, dword [ebp - 0x64]
jmp 0x418f02
lea edx, [ebp - 0x64]
cmp ebx, esi
mov eax, ebx
jb 0x418f0a
mov eax, esi
push eax
push ecx
push edx
call fcn.00461d10
add esp, 0xc
test eax, eax
jne 0x418f2b
cmp ebx, esi
jae 0x418f24
mov eax, 0xffffffff
jmp 0x418f2b
xor eax, eax
cmp ebx, esi
setne al
test eax, eax
jne 0x418f3e
mov dword [0x4798c8], 3
jmp 0x41907d
mov ecx, 0x467ac4
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x418f5a
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x418f45
dec eax
mov ebx, dword [ebp - 0x54]
mov esi, eax
mov eax, dword [ebp - 0x50]
cmp eax, 0x10
jb 0x418f6c
mov edx, dword [ebp - 0x64]
jmp 0x418f6f
lea edx, [ebp - 0x64]
cmp ebx, esi
mov eax, ebx
jb 0x418f77
mov eax, esi
push eax
push ecx
push edx
call fcn.00461d10
add esp, 0xc
test eax, eax
jne 0x418f98
cmp ebx, esi
jae 0x418f91
mov eax, 0xffffffff
jmp 0x418f98
xor eax, eax
cmp ebx, esi
setne al
test eax, eax
jne 0x418fab
mov dword [0x4798c8], 7
jmp 0x41907d
mov ecx, 0x467ad0
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x418fc7
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x418fb2
dec eax
mov ebx, dword [ebp - 0x54]
mov esi, eax
mov eax, dword [ebp - 0x50]
cmp eax, 0x10
jb 0x418fd9
mov edx, dword [ebp - 0x64]
jmp 0x418fdc
lea edx, [ebp - 0x64]
cmp ebx, esi
mov eax, ebx
jb 0x418fe4
mov eax, esi
push eax
push ecx
push edx
call fcn.00461d10
add esp, 0xc
test eax, eax
jne 0x419005
cmp ebx, esi
jae 0x418ffe
mov eax, 0xffffffff
jmp 0x419005
xor eax, eax
cmp ebx, esi
setne al
test eax, eax
jne 0x419015
mov dword [0x4798c8], 5
jmp 0x41907d
mov ecx, 0x467ae0
xor eax, eax
movzx edx, byte [ecx + eax]
test edx, edx
je 0x419031
movzx edx, byte [ecx + eax + 1]
add eax, 2
test edx, edx
jne 0x41901c
dec eax
mov ebx, dword [ebp - 0x54]
mov esi, eax
mov eax, dword [ebp - 0x50]
cmp eax, 0x10
jb 0x419043
mov edx, dword [ebp - 0x64]
jmp 0x419046
lea edx, [ebp - 0x64]
cmp ebx, esi
mov eax, ebx
jb 0x41904e
mov eax, esi
push eax
push ecx
push edx
call fcn.00461d10
add esp, 0xc
test eax, eax
jne 0x41906f
cmp ebx, esi
jae 0x419068
mov eax, 0xffffffff
jmp 0x41906f
xor eax, eax
cmp ebx, esi
setne al
test eax, eax
jne 0x41907d
mov dword [0x4798c8], 6
lea eax, [ebp - 0x68]
add esp, 0xfffffff8
mov dword [esp], 0x467af0
mov dword [esp + 4], eax
call fcn.0041ae30
add esp, 8
movzx eax, al
test eax, eax
je 0x4190be
lea eax, [ebp - 0x68]
add esp, 0xfffffff4
mov dword [esp], 0x4798cc
mov dword [esp + 4], eax
mov dword [esp + 8], 0x401820
call fcn.0041cf50
add esp, 0xc
lea eax, [ebp - 0x68]
add esp, 0xfffffff8
mov dword [esp], 0x467afc
mov dword [esp + 4], eax
call fcn.0041ae30
add esp, 8
movzx eax, al
test eax, eax
je 0x41912a
mov dword [ebp - 0x28], 0
lea eax, [ebp - 0x68]
mov esi, dword [eax + 0x14]
mov ebx, 0x479928
mov dword [ebp - 0x30], ebx
mov dword [ebp - 0x2c], eax
mov dword [ebp - 0x34], esi
cmp ebx, eax
je 0x4196c7
mov dword [ebp - 0x38], esi
cmp esi, 0xfffffffe
jbe 0x419111
call fcn.00461214
mov esi, dword [ebp - 0x38]
cmp esi, dword [ebx + 0x18]
ja 0x4194f7
test esi, esi
je 0x4194cf
test esi, esi
ja 0x419474
mov dword [ebp - 4], 0xffffffff
mov eax, dword [ebp - 0x50]
cmp eax, 0x10
jae 0x4197ca
mov edi, dword [ebp - 0x24]
mov esi, dword [ebp - 0x20]
mov ebx, dword [ebp - 0x1c]
xor eax, eax
mov dword [ebp - 0x54], eax
mov dword [ebp - 0x50], 0xf
mov byte [ebp - 0x14], al
mov byte [ebp - 0x64], al
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
mov esp, ebp
pop ebp
ret
mov esi, dword [ebp - 0x44]
mov ecx, dword [esi + 0x18]
cmp ecx, 0x10
jb 0x41918b
mov edi, dword [esi + 4]
jmp 0x41918e
lea edi, [esi + 4]
mov edx, dword [ebp - 0x40]
mov eax, dword [edx + 0x18]
cmp eax, 0x10
jb 0x41919e
mov edx, dword [edx + 4]
jmp 0x4191a1
add edx, 4
add edx, dword [ebp - 0x3c]
mov ebx, dword [ebp - 0x48]
push ebx
push edx
push ecx
push edi
call fcn.0044a80e
add esp, 0x10
mov eax, dword [esi + 0x18]
mov dword [esi + 0x14], ebx
cmp eax, 0x10
jb 0x4191c3
mov esi, dword [esi + 4]
jmp 0x4191c6
add esi, 4
xor eax, eax
mov byte [ebp - 0xb0], al
mov byte [esi + ebx], al
jmp 0x418d39
mov dword [0x4798e8], 0
cmp edi, 0x10
jb 0x4191ec
mov eax, dword [0x4798d8]
jmp 0x4191f1
mov eax, 0x4798d8
mov byte [eax], 0
jmp 0x418d31
mov eax, dword [0x4798e8]
mov dword [ebp - 0xdc], ebx
mov esi, ebx
mov dword [ebp - 0xd8], eax
or esi, 0xf
cmp esi, 0xfffffffe
mov dword [ebp - 0xe0], 0x4798d4
mov dword [ebp - 0xe8], esi
jbe 0x41922e
mov dword [ebp - 0xe8], ebx
mov esi, ebx
jmp 0x419243
mov ecx, edi
shr ecx, 1
mov eax, 0xaaaaaaab
mul esi
shr edx, 1
cmp ecx, edx
ja 0x4193b1
mov dword [ebp - 4], 6
mov dword [ebp - 0xe4], 0
inc esi
jne 0x41925b
xor esi, esi
jmp 0x4192a0
xor edx, edx
mov eax, 0xffffffff
div esi
cmp eax, 1
jae 0x4192a0
mov dword [ebp - 0xf4], 0
lea eax, [ebp - 0xf4]
push eax
lea ecx, [ebp - 0x10c]
call fcn.0044a5f3
mov dword [ebp - method.std::bad_alloc.virtual_0], vtable.std::bad_alloc.0
lea eax, [ebp - 0x10c]
push 0x475b08
push eax
call fcn.0044ab8b
push edi
mov dword [esp], esi
call fcn.0042e777
pop ecx
mov dword [ebp - 4], 5
mov dword [ebp - 0xe4], eax
mov dword [ebp - 4], 5
nop
mov esi, dword [ebp - 0xd8]
test esi, esi
ja 0x41937e
mov edi, dword [ebp - 0xe0]
mov eax, dword [edi + 0x18]
mov ebx, edi
cmp eax, 0x10
jae 0x419364
mov ecx, dword [ebp - 0xe4]
mov edx, dword [ebp - 0xe8]
mov dword [ebx + 0x18], 0xf
xor eax, eax
mov byte [ebp - 0xb8], al
mov byte [ebp - 0xb4], al
mov dword [ebx + 0x14], eax
mov byte [ebx + 4], al
mov ebx, dword [ebp - 0x4c]
mov dword [edi + 4], ecx
mov dword [edi + 0x18], edx
mov dword [edi + 0x14], esi
add edi, 4
cmp edx, 0x10
jae 0x41931e
mov ecx, edi
mov byte [ecx + esi], al
jmp 0x418d31
push dword [edi + 4]
call fcn.0042e7a2
pop ecx
mov edi, dword [ebp - 0xe0]
mov esi, dword [ebp - 0xd8]
jmp 0x4192e1
mov edi, dword [ebp - 0xe0]
mov eax, dword [edi + 0x18]
cmp eax, 0x10
jb 0x419391
mov eax, dword [edi + 4]
jmp 0x419394
lea eax, [edi + 4]
mov edx, dword [ebp - 0xe8]
push esi
push eax
inc edx
push edx
push dword [ebp - 0xe4]
call fcn.0044a80e
add esp, 0x10
jmp 0x4192d3
mov eax, ecx
neg eax
add eax, 0xfffffffe
cmp edi, eax
ja 0x419243
lea esi, [edi + ecx]
mov dword [ebp - 0xe8], esi
jmp 0x419243
mov ecx, dword [0x4798e8]
cmp ecx, ebx
jae 0x4193e3
call fcn.00461253
mov ecx, dword [0x4798e8]
sub ecx, ebx
cmp ecx, 0xffffffff
mov esi, ecx
jb 0x4193f1
mov esi, 0xffffffff
test esi, esi
jbe 0x418d39
mov edx, dword [0x4798ec]
cmp edx, 0x10
jb 0x41940c
mov edi, dword [0x4798d8]
jmp 0x419411
mov edi, 0x4798d8
add esp, 0xfffffff0
lea eax, [ebx + edi]
mov dword [esp], eax
sub edx, ebx
add ebx, esi
mov dword [esp + 4], edx
add ebx, edi
mov dword [esp + 8], ebx
sub ecx, esi
mov dword [esp + 0xc], ecx
call fcn.0044abd5
add esp, 0x10
mov edx, dword [0x4798e8]
mov eax, dword [0x4798ec]
sub edx, esi
mov dword [0x4798e8], edx
cmp eax, 0x10
jb 0x419455
mov eax, dword [0x4798d8]
jmp 0x41945a
mov eax, 0x4798d8
mov byte [eax + edx], 0
jmp 0x418d39
push dword [ebp - 0xa8]
call fcn.0042e7a2
pop ecx
jmp 0x418d56
mov esi, dword [ebp - 0x30]
mov ecx, dword [esi + 0x18]
cmp ecx, 0x10
jb 0x419484
mov edi, dword [esi + 4]
jmp 0x419487
lea edi, [esi + 4]
mov edx, dword [ebp - 0x2c]
mov eax, dword [edx + 0x18]
cmp eax, 0x10
jb 0x419497
mov edx, dword [edx + 4]
jmp 0x41949a
add edx, 4
add edx, dword [ebp - 0x28]
mov ebx, dword [ebp - 0x34]
push ebx
push edx
push ecx
push edi
call fcn.0044a80e
add esp, 0x10
mov eax, dword [esi + 0x18]
mov dword [esi + 0x14], ebx
cmp eax, 0x10
jb 0x4194bc
mov esi, dword [esi + 4]
jmp 0x4194bf
add esi, 4
xor eax, eax
mov byte [ebp - 0x84], al
mov byte [esi + ebx], al
jmp 0x41912a
mov eax, dword [ebx + 0x18]
mov dword [ebx + 0x14], 0
cmp eax, 0x10
jb 0x4194e3
mov edx, dword [ebx + 4]
jmp 0x4194e8
mov edx, 0x47992c
xor eax, eax
mov byte [ebp - 0x90], al
mov byte [edx], al
jmp 0x419122
mov eax, dword [ebx + 0x14]
mov dword [ebp - 0xc4], ebx
mov edi, esi
mov dword [ebp - 0xc0], esi
or edi, 0xf
cmp edi, 0xfffffffe
mov dword [ebp - 0xbc], eax
mov dword [ebp - 0xcc], edi
jbe 0x419526
mov dword [ebp - 0xcc], esi
mov edi, esi
jmp 0x41953e
mov ebx, dword [ebx + 0x18]
mov ecx, ebx
shr ecx, 1
mov eax, 0xaaaaaaab
mul edi
shr edx, 1
cmp ecx, edx
ja 0x4196aa
mov dword [ebp - 4], 1
mov dword [ebp - 0xc8], 0
inc edi
jne 0x419556
xor edi, edi
jmp 0x419599
xor edx, edx
mov eax, 0xffffffff
div edi
cmp eax, 1
jae 0x419599
mov dword [ebp - 0xf0], 0
lea ebx, [ebp - 0x100]
mov ecx, ebx
lea eax, [ebp - 0xf0]
push eax
call fcn.0044a5f3
mov dword [ebx], vtable.std::bad_alloc.0
lea eax, [ebp - 0x100]
push 0x475b08
push eax
call fcn.0044ab8b
push edi
mov dword [esp], edi
call fcn.0042e777
pop ecx
mov dword [ebp - 4], 0
mov dword [ebp - 0xc8], eax
mov dword [ebp - 4], 0
nop
mov esi, dword [ebp - 0xbc]
test esi, esi
ja 0x419677
mov edi, dword [ebp - 0xc4]
mov eax, dword [edi + 0x18]
mov ebx, edi
cmp eax, 0x10
jae 0x41965d
mov ecx, dword [ebp - 0xc8]
mov edx, dword [ebp - 0xcc]
mov dword [ebx + 0x18], 0xf
xor eax, eax
mov byte [ebp - 0x8c], al
mov byte [ebp - 0x88], al
mov dword [ebx + 0x14], eax
mov byte [ebx + 4], al
mov dword [edi + 4], ecx
mov dword [edi + 0x18], edx
mov dword [edi + 0x14], esi
add edi, 4
cmp edx, 0x10
jae 0x419614
mov ecx, edi
mov byte [ecx + esi], al
mov esi, dword [ebp - 0x38]
jmp 0x419122
push dword [edi + 4]
call fcn.0042e7a2
pop ecx
mov edi, dword [ebp - 0xc4]
mov esi, dword [ebp - 0xbc]
jmp 0x4195da
mov edi, dword [ebp - 0xc4]
mov eax, dword [edi + 0x18]
cmp eax, 0x10
jb 0x41968a
mov eax, dword [edi + 4]
jmp 0x41968d
lea eax, [edi + 4]
mov edx, dword [ebp - 0xcc]
push esi
push eax
inc edx
push edx
push dword [ebp - 0xc8]
call fcn.0044a80e
add esp, 0x10
jmp 0x4195cc
mov eax, ecx
neg eax
add eax, 0xfffffffe
cmp ebx, eax
ja 0x41953e
lea edi, [ebx + ecx]
mov dword [ebp - 0xcc], edi
jmp 0x41953e
cmp esi, dword [ebx + 0x14]
jbe 0x4196d1
call fcn.00461253
mov eax, dword [ebx + 0x14]
sub eax, esi
cmp eax, 0xffffffff
mov edi, eax
jb 0x4196e2
mov edi, 0xffffffff
test edi, edi
ja 0x419753
mov ebx, dword [ebp - 0x30]
mov esi, dword [ebp - 0x28]
mov edx, dword [ebx + 0x14]
cmp edx, esi
jae 0x4196f5
mov esi, edx
test esi, esi
jbe 0x41912a
mov eax, dword [ebx + 0x18]
cmp eax, 0x10
jb 0x41970a
mov ecx, dword [ebx + 4]
jmp 0x41970d
lea ecx, [ebx + 4]
add esp, 0xfffffff0
mov dword [esp], ecx
mov dword [esp + 4], eax
add ecx, esi
mov dword [esp + 8], ecx
sub edx, esi
mov dword [esp + 0xc], edx
call fcn.0044abd5
add esp, 0x10
mov edx, dword [ebx + 0x14]
mov eax, dword [ebx + 0x18]
sub edx, esi
mov dword [ebx + 0x14], edx
cmp eax, 0x10
jb 0x419740
mov ebx, dword [ebx + 4]
jmp 0x419743
add ebx, 4
xor eax, eax
mov byte [ebp - 0xd0], al
mov byte [ebx + edx], al
jmp 0x41912a
mov edx, dword [ebx + 0x18]
cmp edx, 0x10
jb 0x419766
mov ecx, dword [ebx + 4]
mov dword [ebp - 0xec], ecx
jmp 0x419770
mov dword [ebp - 0xec], 0x47992c
add esp, 0xfffffff0
sub edx, esi
mov dword [esp + 4], edx
sub eax, edi
mov ebx, dword [ebp - 0xec]
mov dword [esp + 0xc], eax
lea ecx, [esi + ebx]
add esi, edi
add esi, ebx
mov dword [esp], ecx
mov dword [esp + 8], esi
mov ebx, 0x479928
call fcn.0044abd5
add esp, 0x10
mov ecx, dword [ebx + 0x14]
mov eax, dword [ebx + 0x18]
sub ecx, edi
mov dword [ebx + 0x14], ecx
cmp eax, 0x10
jb 0x4197b5
mov edx, dword [ebx + 4]
jmp 0x4197ba
mov edx, 0x47992c
xor eax, eax
mov byte [ebp - 0xd4], al
mov byte [edx + ecx], al
jmp 0x4196e6
push dword [ebp - 0x64]
call fcn.0042e7a2
pop ecx
jmp 0x41913d