Function at 0x45b8ba
Capabilities:
Contain obfuscated stackstrings
Encode data using xor

Disassembly:
push 0xa0
mov eax, 0x4df86d
call fcn.004bb813
mov edi, ecx
mov dword [ebp - 0x8c], edi
mov eax, dword [ebp + 8]
push str.Cookies
push eax
mov dword [ebp - 0xac], eax
lea eax, [ebp - 0x94]
xor ebx, ebx
push eax
mov dword [ebp - 0x80], ebx
call fcn.00401e50
lea eax, [ebp - 0x80]
push eax
push dword [ebp - 0x94]
mov dword [ebp - 4], ebx
call fcn.0042a509
add esp, 0x14
cmp dword [ebp - 0x80], ebx
je 0x45c49a
test eax, eax
jne 0x45c49a
push 0x5311f0
lea ecx, [ebp - 0x90]
call fcn.00401749
mov byte [ebp - 4], 2
call fcn.004bbc9b
cdq
mov ecx, 0x2710
idiv ecx
lea eax, [ebp - 0x90]
push edx
push str.130316752746_05d
push eax
call fcn.0040384a
add esp, 0xc
lea ecx, [ebp - 0xa8]
push ebx
call fcn.0044f5ec
lea eax, [edi + 0x24]
push eax
lea eax, [ebp - 0x28]
push eax
mov byte [ebp - 4], 3
call fcn.004650cb
pop ecx
pop ecx
push 4
pop ecx
mov byte [ebp - 4], cl
push eax
lea ecx, [ebp - 0x7c]
call fcn.0044f51c
lea eax, [ebp - 0x7c]
push eax
push str.installer_bic
mov esi, str.installerIdentifiers
push esi
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 5
call fcn.0044f936
mov ecx, eax
call fcn.0044f936
mov ecx, eax
call fcn.0044f7ef
push 4
pop edx
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], dl
call fcn.0044f795
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 3
call fcn.00401056
lea eax, [edi + 0x28]
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.004650cb
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 6
call fcn.0044f51c
lea eax, [ebp - 0x7c]
push eax
push str.installer_verifier
push esi
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 7
call fcn.0044f936
mov ecx, eax
call fcn.0044f936
mov ecx, eax
call fcn.0044f7ef
mov byte [ebp - 4], 6
lea ecx, [ebp - 0x7c]
call fcn.0044f795
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 3
call fcn.00401056
lea ecx, [edi + 0x2c]
mov eax, dword [ecx]
cmp dword [eax - 0xc], ebx
je 0x45ba82
push ecx
lea eax, [ebp - 0x28]
push eax
call fcn.004650cb
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 8
call fcn.0044f51c
lea eax, [ebp - 0x7c]
push eax
push str.installer_verifier_for_215app
push str.InstallerIdentifiers
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 9
call fcn.0044f936
mov ecx, eax
call fcn.0044f936
mov ecx, eax
call fcn.0044f7ef
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 8
call fcn.0044f795
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 3
call fcn.00401056
lea eax, [edi + 0x4c]
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.004650cb
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0xa
call fcn.0044f51c
lea eax, [ebp - 0x7c]
push eax
push str.source_id
mov esi, str.installerParams
push esi
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 0xb
call fcn.0044f936
mov ecx, eax
call fcn.0044f936
mov ecx, eax
call fcn.0044f7ef
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0xa
call fcn.0044f795
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 3
call fcn.00401056
lea eax, [edi + 0x50]
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.004650cb
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0xc
call fcn.0044f51c
lea eax, [ebp - 0x7c]
push eax
push str.sub_id
push esi
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 0xd
call fcn.0044f936
mov ecx, eax
call fcn.0044f936
mov ecx, eax
call fcn.0044f7ef
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0xc
call fcn.0044f795
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 3
call fcn.00401056
lea eax, [edi + 0x54]
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.004650cb
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0xe
call fcn.0044f51c
lea eax, [ebp - 0x7c]
push eax
push str.uzid
push esi
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 0xf
call fcn.0044f936
mov ecx, eax
call fcn.0044f936
mov ecx, eax
call fcn.0044f7ef
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0xe
call fcn.0044f795
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 3
call fcn.00401056
lea eax, [edi + 0x44]
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.004650cb
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x10
call fcn.0044f51c
lea eax, [ebp - 0x7c]
push eax
push str.installerVersion
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 0x11
call fcn.0044f936
mov ecx, eax
call fcn.0044f7ef
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x10
call fcn.0044f795
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 3
call fcn.00401056
lea eax, [edi + 0x58]
push eax
lea eax, [ebp - 0x28]
push eax
call fcn.004650cb
pop ecx
pop ecx
push eax
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x12
call fcn.0044f51c
lea eax, [ebp - 0x7c]
push eax
push str.defaultBrowser
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 0x13
call fcn.0044f936
mov ecx, eax
call fcn.0044f7ef
lea ecx, [ebp - 0x7c]
mov byte [ebp - 4], 0x12
call fcn.0044f795
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 3
call fcn.00401056
lea ecx, [ebp - 0x48]
call fcn.00450d8b
lea eax, [ebp - 0xa8]
push eax
lea eax, [ebp - 0x28]
push eax
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 0x14
call fcn.00452ee6
cmp dword [eax + 0x14], 0x10
mov byte [ebp - 4], 0x15
jb 0x45bc69
mov eax, dword [eax]
push eax
lea ecx, [ebp - 0x84]
call fcn.00455589
lea ecx, [ebp - 0x28]
mov byte [ebp - 4], 0x17
call fcn.00401056
push 0xa
lea ecx, [ebp - 0x84]
call fcn.004601eb
push 0x5311f0
lea ecx, [ebp - 0x58]
call fcn.00401749
push str.REPLACE_INTO_cookies_creation_utc_host_key_name_value__path__expires_utc__secure__httponly__last_access_utc__persistent
lea ecx, [ebp - 0x6c]
mov byte [ebp - 4], 0x18
call fcn.00455589
mov esi, 0x4e61ac
push esi
lea eax, [ebp - 0x90]
push eax
lea eax, [ebp - 0x5c]
push eax
mov byte [ebp - 4], 0x19
call fcn.00401e50
add esp, 0xc
push dword [eax]
lea ecx, [ebp - 0x58]
mov byte [ebp - 4], 0x1a
call fcn.004559f0
mov ecx, dword [ebp - 0x5c]
mov byte [ebp - 4], 0x19
lea ecx, [ecx - 0x10]
call fcn.00404c8b
push esi
lea ecx, [ebp - 0x50]
call fcn.004017d3
push str..com
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x1b
call fcn.004017d3
push dword [edi + 0xa8]
lea ecx, [ebp - 0x4c]
mov byte [ebp - 4], 0x1c
call fcn.004017d3
mov esi, eax
push str.www.
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0x1d
call fcn.00455589
push esi
push eax
lea eax, [ebp - 0x64]
push eax
mov byte [ebp - 4], 0x1e
call fcn.004558e5
lea ecx, [ebp - 0x60]
push ecx
push eax
lea eax, [ebp - 0x68]
push eax
mov byte [ebp - 4], 0x1f
call fcn.004558e5
lea ecx, [ebp - 0x50]
push ecx
push eax
lea eax, [ebp - 0x5c]
push eax
mov byte [ebp - 4], 0x20
call fcn.004558e5
add esp, 0x24
mov eax, dword [eax]
lea ecx, [ebp - 0x58]
push dword [eax - 0xc]
mov byte [ebp - 4], 0x21
push eax
call fcn.004560dd
mov ecx, dword [ebp - 0x5c]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x68]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x64]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x54]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x4c]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x60]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x50]
mov byte [ebp - 4], 0x19
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov esi, 0x4e61ac
push esi
lea ecx, [ebp - 0x50]
call fcn.004017d3
push str.InstallerInfo
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0x22
call fcn.00455589
lea ecx, [ebp - 0x50]
push ecx
push eax
lea eax, [ebp - 0x4c]
push eax
mov byte [ebp - 4], 0x23
call fcn.004558e5
add esp, 0xc
mov eax, dword [eax]
lea ecx, [ebp - 0x58]
push dword [eax - 0xc]
mov byte [ebp - 4], 0x24
push eax
call fcn.004560dd
mov ecx, dword [ebp - 0x4c]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x54]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x50]
mov byte [ebp - 4], 0x19
lea ecx, [ecx - 0x10]
call fcn.00404c8b
push esi
lea ecx, [ebp - 0x60]
call fcn.004017d3
push 0x4e6e60
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x25
call fcn.004017d3
push 0x4ee5d8
lea ecx, [ebp - 0x68]
mov byte [ebp - 4], 0x26
call fcn.00455589
lea ecx, [ebp - 0x84]
mov byte [ebp - 4], 0x27
push ecx
push eax
lea eax, [ebp - 0x64]
push eax
call fcn.004558e5
lea ecx, [ebp - 0x50]
push ecx
push eax
lea eax, [ebp - 0x54]
push eax
mov byte [ebp - 4], 0x28
call fcn.004558e5
lea ecx, [ebp - 0x60]
push ecx
push eax
lea eax, [ebp - 0x4c]
push eax
mov byte [ebp - 4], 0x29
call fcn.004558e5
add esp, 0x24
mov eax, dword [eax]
lea ecx, [ebp - 0x58]
push dword [eax - 0xc]
mov byte [ebp - 4], 0x2a
push eax
call fcn.004560dd
mov ecx, dword [ebp - 0x4c]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x54]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x64]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x68]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x50]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x60]
mov byte [ebp - 4], 0x19
lea ecx, [ecx - 0x10]
call fcn.00404c8b
push esi
lea ecx, [ebp - 0x50]
call fcn.004017d3
push 0x4f2178
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0x2b
call fcn.00455589
lea ecx, [ebp - 0x50]
push ecx
push eax
lea eax, [ebp - 0x4c]
push eax
mov byte [ebp - 4], 0x2c
call fcn.004558e5
add esp, 0xc
mov eax, dword [eax]
lea ecx, [ebp - 0x58]
push dword [eax - 0xc]
mov byte [ebp - 4], 0x2d
push eax
call fcn.004560dd
mov ecx, dword [ebp - 0x4c]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x54]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x50]
mov byte [ebp - 4], 0x19
lea ecx, [ecx - 0x10]
call fcn.00404c8b
push esi
lea ecx, [ebp - 0x50]
call fcn.004017d3
push str.13034094474652225
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0x2e
call fcn.00455589
lea ecx, [ebp - 0x50]
push ecx
push eax
lea eax, [ebp - 0x4c]
push eax
mov byte [ebp - 4], 0x2f
call fcn.004558e5
add esp, 0xc
mov eax, dword [eax]
lea ecx, [ebp - 0x58]
push dword [eax - 0xc]
mov byte [ebp - 4], 0x30
push eax
call fcn.004560dd
mov ecx, dword [ebp - 0x4c]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x54]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x50]
mov byte [ebp - 4], 0x19
lea ecx, [ecx - 0x10]
call fcn.00404c8b
push esi
lea ecx, [ebp - 0x50]
call fcn.004017d3
mov esi, 0x4e8458
push esi
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0x31
call fcn.00455589
lea ecx, [ebp - 0x50]
push ecx
push eax
lea eax, [ebp - 0x4c]
push eax
mov byte [ebp - 4], 0x32
call fcn.004558e5
add esp, 0xc
mov eax, dword [eax]
lea ecx, [ebp - 0x58]
push dword [eax - 0xc]
mov byte [ebp - 4], 0x33
push eax
call fcn.004560dd
mov ecx, dword [ebp - 0x4c]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x54]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x50]
mov byte [ebp - 4], 0x19
lea ecx, [ecx - 0x10]
call fcn.00404c8b
push 0x4e61ac
lea ecx, [ebp - 0x50]
call fcn.004017d3
push esi
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0x34
call fcn.00455589
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x35
push ecx
push eax
lea eax, [ebp - 0x4c]
push eax
call fcn.004558e5
add esp, 0xc
mov eax, dword [eax]
lea ecx, [ebp - 0x58]
push dword [eax - 0xc]
mov byte [ebp - 4], 0x36
push eax
call fcn.004560dd
mov ecx, dword [ebp - 0x4c]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x54]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x50]
mov byte [ebp - 4], 0x19
lea ecx, [ecx - 0x10]
call fcn.00404c8b
push 0x4e61ac
lea ecx, [ebp - 0x50]
call fcn.004017d3
push str.13031675274652225
lea ecx, [ebp - 0x54]
mov byte [ebp - 4], 0x37
call fcn.00455589
lea ecx, [ebp - 0x50]
push ecx
push eax
lea eax, [ebp - 0x4c]
push eax
mov byte [ebp - 4], 0x38
call fcn.004558e5
add esp, 0xc
mov eax, dword [eax]
lea ecx, [ebp - 0x58]
push dword [eax - 0xc]
mov byte [ebp - 4], 0x39
push eax
call fcn.004560dd
mov ecx, dword [ebp - 0x4c]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x54]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x50]
mov byte [ebp - 4], 0x19
lea ecx, [ecx - 0x10]
call fcn.00404c8b
push 0x4e8450
lea ecx, [ebp - 0x4c]
call fcn.00455589
mov eax, dword [eax]
lea ecx, [ebp - 0x58]
push dword [eax - 0xc]
mov byte [ebp - 4], 0x3a
push eax
call fcn.004560dd
mov ecx, dword [ebp - 0x4c]
mov byte [ebp - 4], 0x19
lea ecx, [ecx - 0x10]
call fcn.00404c8b
cmp byte [ebp + 0xc], 0
mov esi, 0x4f21b4
je 0x45c17c
push str.__priority
lea ecx, [ebp - 0x4c]
call fcn.00455589
mov eax, dword [eax]
lea ecx, [ebp - 0x6c]
push dword [eax - 0xc]
mov byte [ebp - 4], 0x3b
push eax
call fcn.004560dd
mov ecx, dword [ebp - 0x4c]
mov byte [ebp - 4], 0x19
lea ecx, [ecx - 0x10]
call fcn.00404c8b
push esi
lea ecx, [ebp - 0x4c]
call fcn.00455589
mov eax, dword [eax]
lea ecx, [ebp - 0x58]
push dword [eax - 0xc]
mov byte [ebp - 4], 0x3c
push eax
call fcn.004560dd
mov ecx, dword [ebp - 0x4c]
mov byte [ebp - 4], 0x19
lea ecx, [ecx - 0x10]
call fcn.00404c8b
cmp byte [ebp + 0x10], 0
je 0x45c1da
push str.__has_expires
lea ecx, [ebp - 0x4c]
call fcn.00455589
mov eax, dword [eax]
lea ecx, [ebp - 0x6c]
push dword [eax - 0xc]
mov byte [ebp - 4], 0x3d
push eax
call fcn.004560dd
mov ecx, dword [ebp - 0x4c]
mov byte [ebp - 4], 0x19
lea ecx, [ecx - 0x10]
call fcn.00404c8b
push esi
lea ecx, [ebp - 0x4c]
call fcn.00455589
mov eax, dword [eax]
lea ecx, [ebp - 0x58]
push dword [eax - 0xc]
mov byte [ebp - 4], 0x3e
push eax
call fcn.004560dd
mov ecx, dword [ebp - 0x4c]
mov byte [ebp - 4], 0x19
lea ecx, [ecx - 0x10]
call fcn.00404c8b
push 0x4f21c8
lea ecx, [ebp - 0x50]
call fcn.004017d3
push str.__VALUES_
lea ecx, [ebp - 0x64]
mov byte [ebp - 4], 0x3f
call fcn.00455589
lea ecx, [ebp - 0x58]
push ecx
push eax
lea eax, [ebp - 0x54]
push eax
mov byte [ebp - 4], 0x40
call fcn.004558e5
lea ecx, [ebp - 0x50]
push ecx
push eax
lea eax, [ebp - 0x4c]
push eax
mov byte [ebp - 4], 0x41
call fcn.004558e5
add esp, 0x18
mov eax, dword [eax]
lea ecx, [ebp - 0x6c]
push dword [eax - 0xc]
mov byte [ebp - 4], 0x42
push eax
call fcn.004560dd
mov ecx, dword [ebp - 0x4c]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x54]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x64]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x50]
mov byte [ebp - 4], 0x19
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [0x532ad4]
push 0x16
lea eax, [ecx + 1]
imul eax, ecx
cdq
pop esi
idiv esi
push 4
pop eax
cmp edx, eax
jne 0x45c2a1
mov eax, ecx
push 0x64
cdq
pop ecx
idiv ecx
xor ecx, ecx
push 4
lea eax, [edx + 0x63]
pop edx
mul edx
seto cl
neg ecx
or ecx, eax
push ecx
call fcn.004b9bb1
push eax
call fcn.004baa14
pop ecx
pop ecx
push dword [ebp - 0x6c]
call fcn.0043174d
lea ecx, [ebp - 0x8c]
mov esi, eax
mov dword [esp], 0x5311f0
call fcn.00401749
push 0x400
mov byte [ebp - 4], 0x43
call fcn.0042a4ed
mov dword [ebp - 0x88], eax
lea eax, [ebp - 0x88]
push eax
push ebx
push ebx
push esi
push dword [ebp - 0x80]
call fcn.0042952f
add esp, 0x18
lea ecx, [ebp - 0x98]
push dword [ebp - 0x88]
mov dword [ebp - 0x4c], eax
call fcn.00401814
push dword [ebp - 0x88]
mov byte [ebp - 4], 0x44
call fcn.004392e1
push esi
call fcn.004392e1
push dword [ebp - 0x80]
call fcn.0042a094
mov esi, dword [ebp - 0x4c]
add esp, 0xc
test esi, esi
je 0x45c435
mov cl, byte [ebp + 0xc]
mov al, byte [ebp + 0x10]
test cl, cl
jne 0x45c413
test al, al
jne 0x45c413
push 0x4e7ad0
lea ecx, [ebp - 0x5c]
call fcn.00401855
push str.insert_cook_db_
lea ecx, [ebp - 0x60]
mov byte [ebp - 4], 0x45
call fcn.00401814
push 0x5311f0
lea ecx, [ebp - 0x50]
mov byte [ebp - 4], 0x46
call fcn.00401749
lea eax, [ebp - 0x60]
push eax
lea eax, [ebp - 0x50]
push eax
lea eax, [ebp - 0x68]
push eax
mov byte [ebp - 4], 0x47
call fcn.0044ced3
push esi
push eax
lea eax, [ebp - 0x64]
push eax
mov byte [ebp - 4], 0x48
call fcn.0044cf22
lea ecx, [ebp - 0x5c]
push ecx
push eax
lea eax, [ebp - 0x54]
push eax
mov byte [ebp - 4], 0x49
call fcn.0044ced3
lea ecx, [ebp - 0x98]
push ecx
push eax
lea eax, [ebp - 0x4c]
push eax
mov byte [ebp - 4], 0x4a
call fcn.0044ced3
add esp, 0x30
push eax
mov ecx, edi
mov byte [ebp - 4], 0x4b
call fcn.00405c09
mov ecx, dword [ebp - 0x4c]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x54]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x64]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x68]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x50]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x60]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x5c]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
jmp 0x45c437
and al, cl
mov byte [ebp + 0x10], al
push dword [ebp + 0x10]
test cl, cl
sete byte [ebp + 0xc]
push dword [ebp + 0xc]
mov ecx, edi
push dword [ebp - 0xac]
call fcn.0045b8ba
mov bl, al
jmp 0x45c437
mov bl, 1
mov ecx, dword [ebp - 0x98]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x8c]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x6c]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x58]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x84]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
lea ecx, [ebp - 0x48]
mov byte [ebp - 4], 3
call fcn.00450e36
lea ecx, [ebp - 0xa8]
mov byte [ebp - 4], 2
call fcn.0044f795
mov ecx, dword [ebp - 0x90]
jmp 0x45c4ff
mov ecx, dword [0x532ad4]
push 0x14
lea eax, [ecx + 1]
imul eax, ecx
cdq
pop esi
idiv esi
cmp edx, 7
jne 0x45c4e0
mov esi, ebx
push 8
mov edx, esi
pop edi
mov eax, edx
and eax, 1
dec eax
not eax
and eax, ecx
sar edx, 1
xor edx, eax
dec edi
jne 0x45c4b8
add ecx, edx
inc esi
cmp esi, 0x100
jl 0x45c4b3
mov edi, dword [ebp - 0x8c]
mov dword [0x532ad4], ecx
push str.open_cook_db
lea ecx, [ebp - 0x5c]
call fcn.00401814
lea eax, [ebp - 0x5c]
push eax
mov ecx, edi
mov byte [ebp - 4], 1
call fcn.00405c09
mov ecx, dword [ebp - 0x5c]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov ecx, dword [ebp - 0x94]
lea ecx, [ecx - 0x10]
call fcn.00404c8b
mov al, bl
call fcn.004bb7c2
ret 0xc