Function at 0x464a70
Capabilities:
Get disk information
Get installed programs

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x6037d3
mov eax, dword fs:[0]
push eax
sub esp, 0x2ec
mov eax, dword [0x69cef4]
xor eax, ebp
mov dword [ebp - 0x10], eax
push ebx
push esi
push edi
push eax
lea eax, [ebp - 0xc]
mov dword fs:[0], eax
mov dword [ebp - 0x2d8], ecx
call fcn.0048b890
test al, al
je 0x464ac2
pop esi
pop ecx
pop edi
push ebx
pop ecx
push edi
push eax
pop edi
push ebp
push edi
push eax
pop eax
push esp
push edx
push ebx
pop eax
pop edi
push ebp
pop ebp
push ecx
pop edx
call fcn.0048bf90
test al, al
je 0x464ade
push esp
pop esp
push edi
pop ecx
pop ebp
push esp
push esp
pop eax
push esi
push esi
push ebp
pop esp
pop ebx
pop ebx
push edi
pop esp
push esp
pop edi
push edx
call fcn.0048bac0
test al, al
je 0x464b05
push edx
push edi
pop eax
pop esp
push edi
pop ebx
pop esi
pop ebp
push esi
pop edi
push esp
push ecx
pop eax
push eax
push ecx
push ebp
push ecx
push ebp
pop esp
push esp
pop edx
pop esp
pop ebp
pop eax
pop esp
pop ebx
pop esi
push edi
push edi
pop ebp
lea eax, [ebp - 0x2c0]
push str.696153223110496513435604216815542148150429554308
push eax
call fcn.0041e160
add esp, 8
mov dword [ebp - 4], 0
mov dword [ebp - 0x2ec], 0
mov dword [ebp - 0x2e8], 0
mov dword [ebp - 0x2e4], 0
xor ebx, ebx
mov byte [ebp - 4], 1
mov dword [ebp - 0x2d4], ebx
mov dword [ebp - 0x2e0], ebx
mov dword [ebp - 0x2dc], ebx
call fcn.0048b820
test al, al
je 0x464b74
push ecx
pop ebp
pop esp
pop ebp
pop esi
pop ecx
pop eax
push edx
push edx
push ebp
pop ebp
push ebx
push edx
pop edi
pop edx
push eax
pop edx
pop edi
push esi
pop eax
push edx
call fcn.0048bf20
test al, al
je 0x464b97
push esp
pop ebp
pop edx
push edx
push edx
pop ecx
push edi
pop esp
pop esi
pop esi
push esi
push ecx
push ecx
push esp
push ebx
pop ecx
push esp
pop esi
push esi
push ebp
pop esp
pop eax
push edx
push edi
push esp
pop esi
call fcn.0048b660
test al, al
je 0x464bb8
pop ebp
push edx
pop edx
pop eax
pop eax
push esp
pop esp
pop edx
push esp
push esp
push ecx
pop ebp
pop edx
push ecx
pop eax
push edx
pop ebx
push esi
pop ecx
pop ecx
push ecx
push edi
xor ebx, ebx
call fcn.0048be40
test al, al
je 0x464bd6
pop ecx
pop edx
pop edi
push ecx
pop eax
push ecx
push esp
pop esi
push ebp
pop edi
push edx
pop ebp
push eax
pop edi
push ebp
pop edi
pop eax
push esp
pop edi
pop esi
push esp
mov esi, dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
lea eax, [ebp - 0x2dc]
push eax
push 0x109
push 0
push str.SoftwareMicrosoftWindowsCurrentVersionUninstall_
push reloc.WS2_32.dll_bind
call esi
test eax, eax
jne 0x464c26
mov ecx, dword [ebp - 0x2d8]
lea eax, [ebp - 0x2ec]
push eax
push dword [ebp - 0x2dc]
call fcn.00465d10
push dword [ebp - 0x2dc]
mov ebx, eax
mov dword [ebp - 0x2d4], ebx
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
call fcn.0048b900
test al, al
je 0x464c4f
push edi
push ebx
pop ecx
push esi
pop ecx
push edi
push eax
pop edi
push esi
push ebx
pop esi
push ebp
pop edx
push ebp
push ecx
pop eax
push esp
pop esp
pop ebp
push eax
push esi
push eax
pop esi
pop edx
pop edx
push ebp
mov esi, dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
call fcn.0048bba0
test al, al
je 0x464c73
pop ebp
push edx
push ebx
push ebp
pop edi
push edi
push esi
push esi
push edx
push eax
pop eax
pop ebp
push esp
pop ebx
pop edx
pop edi
push esp
push ebx
pop esp
push edi
push edi
mov ebx, dword [ebp - 0x2d4]
call fcn.0048b6d0
test al, al
je 0x464c8d
push ebp
pop ecx
push edi
push esp
pop ecx
pop ebp
push ebp
push esp
pop ebp
pop ebp
pop edx
push eax
pop eax
pop ebp
push esi
pop esp
pop ecx
test ebx, ebx
jne 0x464cd5
lea eax, [ebp - 0x2dc]
push eax
push 9
push ebx
push 0x60aaa0
push reloc.WS2_32.dll_bind
call esi
test eax, eax
jne 0x464cd5
mov ecx, dword [ebp - 0x2d8]
lea eax, [ebp - 0x2ec]
push eax
push dword [ebp - 0x2dc]
call fcn.00465d10
push dword [ebp - 0x2dc]
mov dword [ebp - 0x2d4], eax
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
call fcn.0048bb30
test al, al
je 0x464cfa
pop eax
pop esi
pop edx
pop ebp
pop eax
push ebx
pop ebx
push eax
push ecx
push esp
pop edi
push edi
push edx
pop edx
push eax
push edi
push ebx
push edx
pop edx
push ebp
pop eax
push edx
pop esi
push esi
pop ebp
push ebx
push eax
push esp
cmp dword [ebp - 0x2d4], 0
je 0x465c96
mov dword [ebp - 0x2d0], 0
mov dword [ebp - 0x2cc], 0
mov dword [ebp - 0x2c8], 0
push 0x20
push str.90145647aa0fdeac48c9eeb6fae1696b
lea ecx, [ebp - 0x230]
mov byte [ebp - 4], 2
mov dword [ebp - 0x21c], 0xf
mov dword [ebp - 0x220], 0
mov byte [ebp - 0x230], 0
call fcn.004090f0
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 3
push eax
lea ecx, [ebp - 0x2d0]
call fcn.0042c7a0
mov eax, dword [ebp - 0x21c]
mov byte [ebp - 4], 2
cmp eax, 0x10
jb 0x464d8e
inc eax
lea ecx, [ebp - 0x230]
push eax
push dword [ebp - 0x230]
call fcn.0043d0f0
push 0x20
push str.64194bc45364c64d06dd6a1633bebd12
lea ecx, [ebp - 0x230]
mov dword [ebp - 0x21c], 0xf
mov dword [ebp - 0x220], 0
mov byte [ebp - 0x230], 0
call fcn.004090f0
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 4
push eax
lea ecx, [ebp - 0x2d0]
call fcn.0042c7a0
mov eax, dword [ebp - 0x21c]
mov byte [ebp - 4], 2
cmp eax, 0x10
jb 0x464df3
inc eax
lea ecx, [ebp - 0x230]
push eax
push dword [ebp - 0x230]
call fcn.0043d0f0
push 0x20
push str.f61cb6b4d80b78a8ef99ce26371babc6
lea ecx, [ebp - 0x230]
mov dword [ebp - 0x21c], 0xf
mov dword [ebp - 0x220], 0
mov byte [ebp - 0x230], 0
call fcn.004090f0
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 5
push eax
lea ecx, [ebp - 0x2d0]
call fcn.0042c7a0
mov eax, dword [ebp - 0x21c]
mov byte [ebp - 4], 2
cmp eax, 0x10
jb 0x464e58
inc eax
lea ecx, [ebp - 0x230]
push eax
push dword [ebp - 0x230]
call fcn.0043d0f0
push 0x20
push str.7b114fce349568976c1b34c85efbef70
lea ecx, [ebp - 0x230]
mov dword [ebp - 0x21c], 0xf
mov dword [ebp - 0x220], 0
mov byte [ebp - 0x230], 0
call fcn.004090f0
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 6
push eax
lea ecx, [ebp - 0x2d0]
call fcn.0042c7a0
mov eax, dword [ebp - 0x21c]
mov byte [ebp - 4], 2
cmp eax, 0x10
jb 0x464ebd
inc eax
lea ecx, [ebp - 0x230]
push eax
push dword [ebp - 0x230]
call fcn.0043d0f0
push 0x20
push str.d43fcbc0613711e8723da25658dd356c
lea ecx, [ebp - 0x230]
mov dword [ebp - 0x21c], 0xf
mov dword [ebp - 0x220], 0
mov byte [ebp - 0x230], 0
call fcn.004090f0
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 7
push eax
lea ecx, [ebp - 0x2d0]
call fcn.0042c7a0
mov eax, dword [ebp - 0x21c]
mov byte [ebp - 4], 2
cmp eax, 0x10
jb 0x464f22
inc eax
lea ecx, [ebp - 0x230]
push eax
push dword [ebp - 0x230]
call fcn.0043d0f0
push 0x20
push str.f99f161f65b2edfff12548c4768641da
lea ecx, [ebp - 0x230]
mov dword [ebp - 0x21c], 0xf
mov dword [ebp - 0x220], 0
mov byte [ebp - 0x230], 0
call fcn.004090f0
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 8
push eax
lea ecx, [ebp - 0x2d0]
call fcn.0042c7a0
mov eax, dword [ebp - 0x21c]
mov byte [ebp - 4], 2
cmp eax, 0x10
jb 0x464f87
inc eax
lea ecx, [ebp - 0x230]
push eax
push dword [ebp - 0x230]
call fcn.0043d0f0
push 0x20
push str.4b7c323df5564bb95f8897aa9fa117d2
lea ecx, [ebp - 0x230]
mov dword [ebp - 0x21c], 0xf
mov dword [ebp - 0x220], 0
mov byte [ebp - 0x230], 0
call fcn.004090f0
lea eax, [ebp - 0x230]
mov byte [ebp - 4], 9
push eax
lea ecx, [ebp - 0x2d0]
call fcn.0042c7a0
mov eax, dword [ebp - 0x21c]
mov byte [ebp - 4], 2
cmp eax, 0x10
jb 0x464fec
inc eax
lea ecx, [ebp - 0x230]
push eax
push dword [ebp - 0x230]
call fcn.0043d0f0
push str.3e3602db9e78ff4610ef037fb4aad845
lea ecx, [ebp - 0x260]
call fcn.0040fe40
lea eax, [ebp - 0x260]
mov byte [ebp - 4], 0xa
push eax
lea ecx, [ebp - 0x2d0]
call fcn.0042c7a0
mov eax, dword [ebp - 0x24c]
mov byte [ebp - 4], 2
cmp eax, 0x10
jb 0x465034
inc eax
lea ecx, [ebp - 0x260]
push eax
push dword [ebp - 0x260]
call fcn.0043d0f0
push str.9170ab22a7dd7f3629fab43f4f63fd23
lea ecx, [ebp - 0x260]
call fcn.0040fe40
lea eax, [ebp - 0x260]
mov byte [ebp - 4], 0xb
push eax
lea ecx, [ebp - 0x2d0]
call fcn.0042c7a0
mov eax, dword [ebp - 0x24c]
mov byte [ebp - 4], 2
cmp eax, 0x10
jb 0x46507c
inc eax
lea ecx, [ebp - 0x260]
push eax
push dword [ebp - 0x260]
call fcn.0043d0f0
call fcn.0048bc80
test al, al
je 0x4650a0
push esi
push esp
push ecx
pop ebp
push ecx
pop ecx
pop edi
push edx
pop edx
push ecx
pop esi
push ecx
push esp
push ecx
push esp
pop ebx
push esp
push ebp
pop ebx
push esi
pop esi
pop eax
push eax
push ebp
push ebp
push edx
push edx
push str.1798d1747062b624614f6083c69085db
lea ecx, [ebp - 0x260]
call fcn.0040fe40
lea eax, [ebp - 0x260]
mov byte [ebp - 4], 0xc
push eax
lea ecx, [ebp - 0x2d0]
call fcn.0042c7a0
mov eax, dword [ebp - 0x24c]
mov byte [ebp - 4], 2
cmp eax, 0x10
jb 0x4650e8
inc eax
lea ecx, [ebp - 0x260]
push eax
push dword [ebp - 0x260]
call fcn.0043d0f0
push str.e61d27a0e8e370de9cd5c17b928c9056
lea ecx, [ebp - 0x260]
call fcn.0040fe40
lea eax, [ebp - 0x260]
mov byte [ebp - 4], 0xd
push eax
lea ecx, [ebp - 0x2d0]
call fcn.0042c7a0
mov eax, dword [ebp - 0x24c]
mov byte [ebp - 4], 2
cmp eax, 0x10
jb 0x465130
inc eax
lea ecx, [ebp - 0x260]
push eax
push dword [ebp - 0x260]
call fcn.0043d0f0
push str.1e015a4308d350c3485729bf056172ee
lea ecx, [ebp - 0x248]
call fcn.0040fe40
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0xe
push eax
lea ecx, [ebp - 0x2d0]
call fcn.0042c7a0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 2
call fcn.00408310
push str.458260d2290b89f72e5abff4127c2881
lea ecx, [ebp - 0x248]
call fcn.0040fe40
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0xf
push eax
lea ecx, [ebp - 0x2d0]
call fcn.0042c7a0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 2
call fcn.00408310
push str.a4cd91316b57cc1e651cbf90d0c4c160
lea ecx, [ebp - 0x248]
call fcn.0040fe40
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x10
push eax
lea ecx, [ebp - 0x2d0]
call fcn.0042c7a0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 2
call fcn.00408310
push str.3793c15b9c6207d5c9c1997b8eb0dd04
lea ecx, [ebp - 0x248]
call fcn.0040fe40
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x11
push eax
lea ecx, [ebp - 0x2d0]
call fcn.0042c7a0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 2
call fcn.00408310
push str.ef2e7626f77faab64babaae1a48d6a57
lea ecx, [ebp - 0x248]
call fcn.0040fe40
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x12
push eax
lea ecx, [ebp - 0x2d0]
call fcn.0042c7a0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 2
call fcn.00408310
push str.23b3810ada7b5e7270bd8cfc1407597d
lea ecx, [ebp - 0x248]
call fcn.0040fe40
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x13
push eax
lea ecx, [ebp - 0x2d0]
call fcn.0042c7a0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 2
call fcn.00408310
push str.9d261a94cec8b8cabc842d4d0489979d
lea ecx, [ebp - 0x248]
call fcn.0040fe40
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x14
push eax
lea ecx, [ebp - 0x2d0]
call fcn.0042c7a0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 2
call fcn.00408310
push str.3b72f09cb9ec16a439a1b4358a9ac645
lea ecx, [ebp - 0x248]
call fcn.0040fe40
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x15
push eax
lea ecx, [ebp - 0x2d0]
call fcn.0042c7a0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 2
call fcn.00408310
push str.bc94cf3863906e9fb48ecea44e0ba66d
lea ecx, [ebp - 0x248]
call fcn.0040fe40
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x16
push eax
lea ecx, [ebp - 0x2d0]
call fcn.0042c7a0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 2
call fcn.00408310
call fcn.0048b4a0
test al, al
je 0x46532e
push esi
push eax
push edi
push eax
push ebp
push esp
pop esi
pop esp
pop ebx
pop esp
pop ecx
push ebx
pop edx
pop ebp
push esp
push edx
push ecx
push edi
push eax
push edx
push eax
push eax
pop esp
push ecx
call fcn.0048b6d0
test al, al
je 0x46534b
pop edx
pop esp
pop esp
push eax
pop esi
pop ecx
push ebx
pop esp
push esp
push esp
pop ebx
push esp
push edi
push esp
pop edi
push edx
push edx
pop ecx
push esp
pop ebp
call fcn.0048b900
test al, al
je 0x46536f
pop esp
push eax
push esp
pop ecx
push esi
pop eax
pop eax
push ecx
pop ebx
pop edx
pop esp
pop ebp
push ecx
push esp
push ebx
push ecx
push eax
pop ebp
push edx
pop esi
pop edi
push edi
push ecx
pop edx
push ecx
pop eax
pop eax
push str.1ed3af10cfa4f41efe846996dd143719
lea ecx, [ebp - 0x248]
call fcn.0040fe40
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x17
push eax
lea ecx, [ebp - 0x2d0]
call fcn.0042c7a0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 2
call fcn.00408310
push str.c8a7b2b51563dd7a3d0665e20e315b8e
lea ecx, [ebp - 0x248]
call fcn.0040fe40
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x18
push eax
lea ecx, [ebp - 0x2d0]
call fcn.0042c7a0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 2
call fcn.00408310
push str.57d7a5aab61654c74cc4b3947a29e5fc
lea ecx, [ebp - 0x248]
call fcn.0040fe40
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x19
push eax
lea ecx, [ebp - 0x2d0]
call fcn.0042c7a0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 2
call fcn.00408310
push str.1bd8003496d1d7f27551a797e5269f3e
lea ecx, [ebp - 0x248]
call fcn.0040fe40
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x1a
push eax
lea ecx, [ebp - 0x2d0]
call fcn.0042c7a0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 2
call fcn.00408310
push str.0d36832ccfb283ccaa9c36726d0e4f89
lea ecx, [ebp - 0x248]
call fcn.0040fe40
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x1b
push eax
lea ecx, [ebp - 0x2d0]
call fcn.0042c7a0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 2
call fcn.00408310
push str.82865f556bdba110c22d2fec7eb5eac2
lea ecx, [ebp - 0x248]
call fcn.0040fe40
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x1c
push eax
lea ecx, [ebp - 0x2d0]
call fcn.0042c7a0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 2
call fcn.00408310
push str.87f60e6b1e60c5afceea9d8e56b4c3c4
lea ecx, [ebp - 0x248]
call fcn.0040fe40
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x1d
push eax
lea ecx, [ebp - 0x2d0]
call fcn.0042c7a0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 2
call fcn.00408310
push str.e7e70b06bad4b66d063744bdb738ae69
lea ecx, [ebp - 0x248]
call fcn.0040fe40
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x1e
push eax
lea ecx, [ebp - 0x2d0]
call fcn.0042c7a0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 2
call fcn.00408310
push str.a811c5d86796f989f743389089d2e3f4
lea ecx, [ebp - 0x248]
call fcn.0040fe40
lea eax, [ebp - 0x248]
mov byte [ebp - 4], 0x1f
push eax
lea ecx, [ebp - 0x2d0]
call fcn.0042c7a0
lea ecx, [ebp - 0x248]
mov byte [ebp - 4], 2
call fcn.00408310
call fcn.0048b820
test al, al
je 0x46556a
push ebp
pop esi
pop edi
pop eax
push esp
pop edx
push ecx
pop ecx
pop ebx
push ecx
push eax
push esi
push esp
push ebp
push ebp
push edx
push edi
push edi
pop ecx
push esi
push esi
call fcn.0048b970
test al, al
je 0x465583
pop eax
pop edi
pop ecx
push esp
push esp
push edi
push edi
pop esp
pop eax
pop esi
pop esi
pop ebp
pop esi
pop edi
push edi
pop esi
push 0x208
lea eax, [ebp - 0x218]
push 0
push eax
call fcn.005d4520
add esp, 0xc
lea eax, [ebp - 0x218]
push eax
push 0x104
call dword [sym.imp.KERNEL32.dll_GetLogicalDriveStringsW]
call fcn.0048b660
test al, al
je 0x4655cb
push esi
push edx
push edx
push ecx
pop eax
push ebp
push esp
pop edx
pop edi
push eax
push edx
pop ecx
pop ecx
push edi
push ebx
pop edx
pop esi
push esi
push edi
pop edx
pop eax
push eax
push eax
call fcn.0048b6d0
test al, al
je 0x4655eb
pop esi
push ebp
pop ebx
push ecx
pop esp
pop ebx
push esi
push ecx
pop ebp
pop esi
pop edi
pop ebp
push esp
pop esi
pop edx
push ebp
push esp
push ecx
pop edx
pop esi
pop esp
pop eax
pop ebx
call fcn.0048bcf0
test al, al
je 0x465607
pop esi
push eax
pop edx
pop esp
push edi
push ebp
push eax
push esp
pop edx
push esp
pop esi
pop esi
pop ebp
pop ebx
pop eax
pop eax
pop edi
pop ebx
push esi
lea eax, [ebp - 0x218]
mov ecx, eax
mov dword [ebp - 0x2d8], eax
lea edx, [ecx + 2]
nop dword [eax + eax]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x465620
sub ecx, edx
sar ecx, 1
cmp ecx, 3
jne 0x46579a
call fcn.0048bb30
test al, al
je 0x465657
pop ecx
pop esp
push eax
push esp
push ebx
push ecx
push esp
push ebx
pop esi
pop edi
pop ebp
pop edi
pop edi
pop ebx
push edi
pop edx
pop ebx
pop eax
pop esi
pop esi
push ecx
push ebx
call fcn.0048b970
test al, al
je 0x465676
pop esi
push ebp
pop ecx
pop eax
pop esi
push edx
pop edi
push ecx
push edx
pop esp
push esp
pop esi
pop esp
push edi
push eax
pop ecx
push ebx
pop ebx
pop esi
push edi
pop ebx
pop esi
call fcn.0048b6d0
test al, al
je 0x465699
push ebp
push eax
push esp
pop edx
pop edx
pop eax
pop esi
pop edi
pop edi
push ebx
push edx
pop ebp
pop ecx
push esi
push eax
push esp
pop ecx
pop ebx
pop ebp
pop ebx
pop edx
pop esi
pop esi
pop esp
push esi
pop ebx
call fcn.0048b660
test al, al
je 0x4656b7
pop ebx
pop ebp
pop edi
pop eax
pop ebp
pop edx
pop ebp
push eax
push esp
push eax
push ebx
push esp
pop esp
pop edi
pop ebp
pop edx
push esp
push ebx
push eax
pop esi
pop esi
call fcn.0048bb30
test al, al
je 0x4656df
pop edx
pop ebp
pop edx
pop edx
pop esp
pop ebx
push esi
push ebx
push edx
pop esi
push eax
pop edx
pop esp
push edi
pop ebx
pop esi
pop esp
pop edx
pop ecx
push esp
pop ebp
push edx
push edx
push ecx
pop edi
push ebp
push edx
push ecx
pop eax
push esi
pop ebx
mov ebx, dword [ebp - 0x2d8]
lea ecx, [ebp - 0x230]
push ebx
call fcn.00405d50
push 0xffffffffffffffff
push 0
lea eax, [ebp - 0x2c0]
mov byte [ebp - 4], 0x20
push eax
lea ecx, [ebp - 0x230]
call fcn.0040fac0
push 1
push 0x608b38
lea ecx, [ebp - 0x230]
call fcn.0040fbd0
cmp dword [ebp - 0x21c], 8
lea eax, [ebp - 0x230]
cmovae eax, dword [ebp - 0x230]
push eax
call fcn.00420250
add esp, 4
test al, al
je 0x465750
lea eax, [ebp - 0x230]
push eax
lea ecx, [ebp - 0x2ec]
call fcn.00420cb0
add ebx, 8
mov esi, ebx
mov dword [ebp - 0x2d8], ebx
lea ecx, [esi + 2]
nop
mov ax, word [esi]
add esi, 2
test ax, ax
jne 0x465760
mov eax, dword [ebp - 0x21c]
sub esi, ecx
sar esi, 1
mov byte [ebp - 4], 2
cmp eax, 8
jb 0x465791
inc eax
lea ecx, [ebp - 0x230]
push eax
push dword [ebp - 0x230]
call fcn.00407380
cmp esi, 3
je 0x465638
mov ebx, dword [ebp - 0x2ec]
mov dword [ebp - 0x2d8], ebx
cmp ebx, dword [ebp - 0x2e8]
je 0x465c87
cmp dword [ebp - 0x2e0], 0
jne 0x465c87
call fcn.0048b820
test al, al
je 0x4657dd
push ecx
pop ebp
pop esp
pop ebp
pop esi
pop ecx
pop eax
push edx
push edx
push ebp
pop ebp
push ebx
push edx
pop edi
pop edx
push eax
pop edx
pop edi
push esi
pop eax
push edx
call fcn.0048bf20
test al, al
je 0x465800
push esp
pop ebp
pop edx
push edx
push edx
pop ecx
push edi
pop esp
pop esi
pop esi
push esi
push ecx
push ecx
push esp
push ebx
pop ecx
push esp
pop esi
push esi
push ebp
pop esp
pop eax
push edx
push edi
push esp
pop esi
call fcn.0048b660
test al, al
je 0x465825
pop ebp
push edx
pop edx
pop eax
pop eax
push esp
pop esp
pop edx
push esp
push esp
push ecx
pop ebp
pop edx
push ecx
pop eax
push edx
pop ebx
push esi
pop ecx
pop ecx
push ecx
push edi
mov ebx, dword [ebp - 0x2d8]
call fcn.0048be40
test al, al
je 0x465843
pop ecx
pop edx
pop edi
push ecx
pop eax
push ecx
push esp
pop esi
push ebp
pop edi
push edx
pop ebp
push eax
pop edi
push ebp
pop edi
pop eax
push esp
pop edi
pop esi
push esp
cmp dword [ebx + 0x14], 8
jb 0x46584b
mov ebx, dword [ebx]
push ebx
lea ecx, [ebp - 0x2a8]
call fcn.00405d50
mov dword [ebp - 0x2f8], 0
mov dword [ebp - 0x2f4], 0
mov dword [ebp - 0x2f0], 0
cmp dword [ebp - 0x294], 8
lea ecx, [ebp - 0x2f8]
lea eax, [ebp - 0x2a8]
mov byte [ebp - 4], 0x22
cmovae eax, dword [ebp - 0x2a8]
push ecx
push eax
call fcn.00426040
mov ebx, dword [ebp - 0x2f8]
add esp, 8
mov dword [ebp - 0x2d4], ebx
cmp ebx, dword [ebp - 0x2f4]
je 0x465c3f
nop word [eax + eax]
cmp dword [ebp - 0x2e0], 0
jne 0x465c3f
cmp dword [ebx + 0x14], 8
jb 0x4658d7
mov eax, dword [ebx]
jmp 0x4658d9
mov eax, ebx
push eax
lea ecx, [ebp - 0x260]
call fcn.00405d50
push 1
push 0
push 0x60c3ec
lea ecx, [ebp - 0x260]
mov byte [ebp - 4], 0x23
call fcn.00407880
cmp eax, 0xffffffff
jle 0x465c08
push 0xffffffffffffffff
inc eax
lea ecx, [ebp - 0x260]
push eax
lea eax, [ebp - 0x278]
push eax
call fcn.00407970
push 1
push 0
push 0x608d14
lea ecx, [ebp - 0x278]
mov byte [ebp - 4], 0x24
call fcn.00407880
cmp eax, 0xffffffff
jle 0x4659c7
push eax
push 0
lea eax, [ebp - 0x248]
push eax
lea ecx, [ebp - 0x278]
call fcn.00407970
mov esi, eax
lea eax, [ebp - 0x278]
cmp eax, esi
je 0x4659a5
mov eax, dword [ebp - 0x264]
cmp eax, 8
jb 0x46597c
inc eax
lea ecx, [ebp - 0x278]
push eax
push dword [ebp - 0x278]
call fcn.00407380
xor eax, eax
mov dword [ebp - 0x264], 7
push esi
lea ecx, [ebp - 0x278]
mov dword [ebp - 0x268], 0
mov word [ebp - 0x278], ax
call fcn.00406c30
mov eax, dword [ebp - 0x234]
mov byte [ebp - 4], 0x24
cmp eax, 8
jb 0x4659c7
inc eax
lea ecx, [ebp - 0x248]
push eax
push dword [ebp - 0x248]
call fcn.00407380
call fcn.0048b900
test al, al
je 0x4659ea
push edi
push ebx
pop ecx
push esi
pop ecx
push edi
push eax
pop edi
push esi
push ebx
pop esi
push ebp
pop edx
push ebp
push ecx
pop eax
push esp
pop esp
pop ebp
push eax
push esi
push eax
pop esi
pop edx
pop edx
push ebp
call fcn.0048bba0
test al, al
je 0x465a0e
pop ebp
push edx
push ebx
push ebp
pop edi
push edi
push esi
push esi
push edx
push eax
pop eax
pop ebp
push esp
pop ebx
pop edx
pop edi
push esp
push ebx
pop esp
push edi
push edi
mov ebx, dword [ebp - 0x2d4]
call fcn.0048b6d0
test al, al
je 0x465a28
push ebp
pop ecx
push edi
push esp
pop ecx
pop ebp
push ebp
push esp
pop ebp
pop ebp
pop edx
push eax
pop eax
pop ebp
push esi
pop esp
pop ecx
lea eax, [ebp - 0x278]
push eax
call fcn.004331d0
add esp, 4
mov dword [ebp - 0x27c], 7
xor eax, eax
mov dword [ebp - 0x280], 0
mov word [ebp - 0x290], ax
lea ecx, [ebp - 0x290]
push 0xffffffffffffffff
push eax
lea eax, [ebp - 0x278]
push eax
call fcn.00407160
push 1
push 0x608d14
lea ecx, [ebp - 0x290]
mov byte [ebp - 4], 0x26
call fcn.0040fbd0
push 7
push 0x608b1c
lea ecx, [ebp - 0x290]
call fcn.0040fbd0
lea eax, [ebp - 0x290]
push eax
lea eax, [ebp - 0x230]
push eax
call fcn.00431210
add esp, 8
mov ecx, dword [ebp - 0x2d0]
mov eax, ecx
mov esi, dword [ebp - 0x21c]
mov edi, dword [ebp - 0x230]
mov byte [ebp - 4], 0x27
cmp ecx, dword [ebp - 0x2cc]
je 0x465b7f
nop dword [eax + eax]
cmp dword [eax + 0x14], 0x10
jb 0x465ada
mov edx, dword [eax]
jmp 0x465adc
mov edx, eax
cmp esi, 0x10
lea ecx, [ebp - 0x230]
cmovae ecx, edi
nop dword [eax + eax]
mov bl, byte [ecx]
cmp bl, byte [edx]
mov byte [ebp - 0x2c1], bl
mov ebx, dword [ebp - 0x2d4]
jne 0x465b32
cmp byte [ebp - 0x2c1], 0
je 0x465b2e
mov bl, byte [ecx + 1]
cmp bl, byte [edx + 1]
mov byte [ebp - 0x2c1], bl
mov ebx, dword [ebp - 0x2d4]
jne 0x465b32
add ecx, 2
add edx, 2
cmp byte [ebp - 0x2c1], 0
jne 0x465af0
xor ecx, ecx
jmp 0x465b37
sbb ecx, ecx
or ecx, 1
test ecx, ecx
je 0x465b48
add eax, 0x18
cmp eax, dword [ebp - 0x2cc]
jne 0x465ad0
jmp 0x465b7f
cmp dword [ebp - 0x264], 8
lea eax, [ebp - 0x278]
mov dword [ebp - 0x2e0], 1
cmovae eax, dword [ebp - 0x278]
push eax
call fcn.00446000
mov ecx, eax
call fcn.0044fe90
mov esi, dword [ebp - 0x21c]
mov edi, dword [ebp - 0x230]
cmp esi, 0x10
jb 0x465b94
lea eax, [esi + 1]
push eax
push edi
lea ecx, [ebp - 0x230]
call fcn.0043d0f0
mov eax, dword [ebp - 0x27c]
mov dword [ebp - 0x21c], 0xf
mov dword [ebp - 0x220], 0
mov byte [ebp - 0x230], 0
cmp eax, 8
jb 0x465bcd
inc eax
lea ecx, [ebp - 0x290]
push eax
push dword [ebp - 0x290]
call fcn.00407380
xor eax, eax
mov dword [ebp - 0x27c], 7
mov word [ebp - 0x290], ax
mov eax, dword [ebp - 0x264]
mov dword [ebp - 0x280], 0
cmp eax, 8
jb 0x465c08
inc eax
lea ecx, [ebp - 0x278]
push eax
push dword [ebp - 0x278]
call fcn.00407380
mov eax, dword [ebp - 0x24c]
mov byte [ebp - 4], 0x22
cmp eax, 8
jb 0x465c2a
inc eax
lea ecx, [ebp - 0x260]
push eax
push dword [ebp - 0x260]
call fcn.00407380
add ebx, 0x18
mov dword [ebp - 0x2d4], ebx
cmp ebx, dword [ebp - 0x2f4]
jne 0x4658c0
lea ecx, [ebp - 0x2f8]
call fcn.00413a30
mov eax, dword [ebp - 0x294]
mov byte [ebp - 4], 2
cmp eax, 8
jb 0x465c6c
inc eax
lea ecx, [ebp - 0x2a8]
push eax
push dword [ebp - 0x2a8]
call fcn.00407380
mov ebx, dword [ebp - 0x2d8]
add ebx, 0x18
mov dword [ebp - 0x2d8], ebx
cmp ebx, dword [ebp - 0x2e8]
jne 0x4657b2
lea ecx, [ebp - 0x2d0]
mov byte [ebp - 4], 1
call fcn.00416d90
call fcn.0048bb30
test al, al
je 0x465cbb
pop eax
pop esi
pop edx
pop ebp
pop eax
push ebx
pop ebx
push eax
push ecx
push esp
pop edi
push edi
push edx
pop edx
push eax
push edi
push ebx
push edx
pop edx
push ebp
pop eax
push edx
pop esi
push esi
pop ebp
push ebx
push eax
push esp
lea ecx, [ebp - 0x2ec]
call fcn.00413a30
mov ecx, dword [ebp - 0x2ac]
cmp ecx, 8
jb 0x465ce4
inc ecx
push ecx
push dword [ebp - 0x2c0]
lea ecx, [ebp - 0x2c0]
call fcn.00407380
mov eax, dword [ebp - 0x2e0]
mov ecx, dword [ebp - 0xc]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.005ca59c
mov esp, ebp
pop ebp
ret