Function at 0x458340
Capabilities:
Encode data using base64
Parse credit card information
Query or enumerate registry key
Query or enumerate registry value

Disassembly:
push ebp
lea ebp, [esp - 0x70]
sub esp, 0x90
push ebx
push esi
push edi
mov dword [ebp + 0x18], ecx
push ecx
lea ecx, [ebp - 0x20]
call fcn.00441f45
mov eax, dword [ebp + 0x78]
mov dword [ebp + 0x24], eax
xor ebx, ebx
lea eax, [ebp + 0x78]
push eax
mov byte [ebp + 0x3b], 0xff
mov byte [ebp + 0x66], bl
mov byte [ebp + 0x53], bl
mov dword [ebp - 8], ebx
call fcn.00439c95
push 0xa
lea eax, [ebp + 0x78]
push eax
push str.___initram
call fcn.00441bc4
add esp, 0x10
test al, al
jne 0x458828
mov dword [ebp + 0x68], ebx
mov esi, dword [ebp + 0x78]
mov ax, word [esi]
cmp ax, 0x2d
mov dword [ebp + 0x54], ebx
mov dword [ebp + 0x58], 0xfffffff0
mov byte [ebp + 0x6f], 0
mov byte [ebp + 0x5f], 0
mov byte [ebp + 0x65], 0
mov byte [ebp + 0x67], 0
mov byte [ebp + 0x2b], 0
mov byte [ebp + 0x64], 0
mov byte [ebp + 0x2a], 0
mov byte [ebp + 0x29], 0
mov dword [ebp + 0x4c], ebx
mov cl, 0x2a
jne 0x4583d3
mov cl, al
movsx ecx, cl
movzx eax, ax
cmp ecx, eax
mov dword [ebp + 0x14], ecx
jne 0x458626
movzx eax, word [esi + 2]
cmp dword [ebp + 0x14], eax
jne 0x458626
xor eax, eax
lea ecx, [esi + 4]
mov ax, word [ecx]
mov edx, eax
and dx, 0xffdf
cmp dx, 0x48
je 0x458626
call fcn.0040ea2b
test al, al
jne 0x458626
xor edi, edi
mov esi, ecx
inc edi
push edi
push esi
push 0x4b7918
mov dword [ebp + 0x78], esi
call fcn.0043af58
add esp, 0xc
test al, al
je 0x45847b
lea eax, [ebp + 0x78]
add esi, 2
push eax
mov dword [ebp + 0x30], esi
call fcn.00405444
cmp word [esi], 0x3a
pop ecx
je 0x458451
or dword [ebp + 0x4c], 7
jmp 0x458617
lea eax, [ebp + 0x60]
push eax
inc esi
lea eax, [ebp + 0x30]
inc esi
push eax
mov dword [ebp + 0x60], ebx
mov dword [ebp + 0x30], esi
call fcn.0043c486
test eax, eax
pop ecx
pop ecx
jle 0x458617
mov eax, dword [ebp + 0x60]
or dword [ebp + 0x4c], eax
jmp 0x458617
push 2
push esi
push 0x4b7914
call fcn.0043af58
add esp, 0xc
test al, al
lea eax, [ebp + 0x78]
je 0x4584c7
add esi, 4
push eax
mov dword [ebp + 0xc], esi
call fcn.00405444
lea eax, [ebp + 0x60]
push eax
lea eax, [ebp + 0xc]
push eax
mov dword [ebp + 0x60], ebx
call fcn.0044b46e
add esp, 0xc
test eax, eax
jle 0x458617
mov eax, dword [ebp + 0x60]
mov dword [ebp + 0x54], eax
mov dword [ebp + 0x58], ebx
jmp 0x458617
push 2
pop esi
push esi
push eax
push 0x4b4318
call fcn.00441bc4
add esp, 0xc
test al, al
je 0x4584e6
mov byte [ebp + 0x65], 1
jmp 0x458617
push 4
lea eax, [ebp + 0x78]
push eax
push str.byte
call fcn.00441bc4
add esp, 0xc
test al, al
je 0x458506
mov byte [ebp + 0x64], 1
jmp 0x458617
push edi
lea eax, [ebp + 0x78]
push eax
push 0x4b2750
call fcn.00441bc4
add esp, 0xc
test al, al
je 0x458525
mov byte [ebp + 0x67], 3
jmp 0x458617
push esi
lea eax, [ebp + 0x78]
push eax
push 0x4b7908
call fcn.00441bc4
add esp, 0xc
test al, al
je 0x458544
or byte [ebp + 0x67], 1
jmp 0x458617
push esi
lea eax, [ebp + 0x78]
push eax
push 0x4b7904
call fcn.00441bc4
add esp, 0xc
test al, al
je 0x458563
or byte [ebp + 0x67], 2
jmp 0x458617
push 4
lea eax, [ebp + 0x78]
push eax
push str.name
call fcn.00441bc4
add esp, 0xc
test al, al
je 0x458583
mov byte [ebp + 0x2b], 1
jmp 0x458617
push edi
lea eax, [ebp + 0x78]
push eax
push 0x4b78f8
call fcn.00441bc4
add esp, 0xc
test al, al
je 0x45859e
inc byte [ebp + 0x66]
jmp 0x458617
push esi
lea eax, [ebp + 0x78]
push eax
push 0x4b78f4
call fcn.00441bc4
add esp, 0xc
test al, al
je 0x4585b9
dec byte [ebp + 0x66]
jmp 0x458617
push edi
lea eax, [ebp + 0x78]
push eax
push 0x4b78f0
call fcn.00441bc4
add esp, 0xc
test al, al
je 0x4585d4
inc byte [ebp + 0x53]
jmp 0x458617
push esi
lea eax, [ebp + 0x78]
push eax
push 0x4b78ec
call fcn.00441bc4
add esp, 0xc
test al, al
je 0x4585f0
mov byte [ebp + 0x2a], 1
jmp 0x458617
push 4
lea eax, [ebp + 0x78]
push eax
push str.init
call fcn.00441bc4
add esp, 0xc
test al, al
je 0x45860d
mov byte [ebp + 0x29], 1
jmp 0x458617
lea eax, [ebp + 0x78]
push eax
call fcn.00405444
pop ecx
mov esi, dword [ebp + 0x78]
movzx eax, word [esi]
cmp dword [ebp + 0x14], eax
je 0x4583e4
lea ecx, [ebp + 8]
call fcn.0043fd9a
lea ecx, [ebp - 0x10]
call fcn.0043fd9a
lea ecx, [ebp + 0x10]
call fcn.0043fd9a
lea ecx, [ebp + 4]
call fcn.0043fd9a
lea ecx, [ebp]
call fcn.0043fd9a
xor eax, eax
mov ax, word [esi]
mov ecx, eax
or ecx, 0x20
cmp cx, 0x6e
je 0x4586a0
cmp cx, 0x75
je 0x4586a0
cmp cx, 0x62
je 0x4586a0
cmp ax, 0x5e
je 0x4586a0
cmp ax, 0x2b
je 0x4586a0
cmp ax, 0x23
je 0x4586a0
cmp ax, 0x40
je 0x4586a0
cmp ax, 0x24
je 0x4586a0
cmp ax, 0x2a
je 0x4586a0
cmp ax, 0x7e
je 0x4586a0
cmp ax, 0x2e
je 0x4586a0
cmp ax, 0x3f
jne 0x4586b9
mov al, byte [esi]
inc esi
inc esi
test al, al
mov byte [ebp + 0x6f], al
mov dword [ebp + 0x78], esi
je 0x4586b9
movzx eax, word [esi]
movsx ecx, byte [ebp + 0x6f]
cmp ecx, eax
je 0x4586bf
cmp word [esi], 0x24
jne 0x4586c9
mov al, byte [esi]
inc esi
inc esi
mov byte [ebp + 0x5f], al
mov dword [ebp + 0x78], esi
cmp byte [ebp + 0x6f], 0x41
jl 0x4586d9
cmp byte [ebp + 0x6f], 0x5a
jg 0x4586d9
or byte [ebp + 0x6f], 0x20
lea eax, [ebp + 0x78]
push eax
call fcn.00439c95
mov edi, dword [ebp + 0x78]
mov dword [esp], 0x4b78dc
push edi
mov dword [ebp + 0x1c], edi
call dword [sym.imp.SHLWAPI.dll_StrStrW]
mov esi, eax
cmp esi, ebx
je 0x4586ff
lea edi, [esi + 4]
mov edx, edi
mov dword [ebp + 0x44], edx
cmp word [edi], bx
je 0x458792
mov ax, word [edx]
cmp ax, 0x2c
je 0x458749
cmp ax, 0x3d
je 0x458792
cmp ax, 0x21
jne 0x45873d
lea eax, [edx + 2]
mov dword [ebp + 0x30], eax
lea eax, [ebp + 0x30]
push eax
call fcn.00439c95
mov eax, dword [ebp + 0x30]
cmp word [eax], bx
pop ecx
je 0x458792
lea edx, [eax - 2]
inc edx
inc edx
mov dword [ebp + 0x44], edx
cmp word [edx], bx
jne 0x45870d
jmp 0x458792
add edx, 2
push 0x3d
push edx
call dword [sym.imp.SHLWAPI.dll_StrChrW]
cmp eax, ebx
je 0x45875d
mov edx, eax
jmp 0x45878a
mov eax, dword [ebp + 0x44]
add eax, 2
push 0x21
push eax
call dword [sym.imp.SHLWAPI.dll_StrChrW]
mov edx, eax
cmp edx, ebx
je 0x45878f
lea eax, [edx + 2]
mov dword [ebp + 0x30], eax
lea eax, [ebp + 0x30]
push eax
call fcn.00439c95
mov eax, dword [ebp + 0x30]
cmp word [eax], bx
pop ecx
jne 0x45878f
mov dword [ebp + 0x44], edx
jmp 0x458792
mov edx, dword [ebp + 0x44]
mov ax, word [edx]
cmp ax, 0x2c
je 0x4587a7
cmp ax, 0x3d
je 0x4587a7
cmp ax, 0x21
jne 0x4587bb
mov al, byte [edx]
mov word [edx], bx
add dword [ebp + 0x44], 2
test al, al
mov byte [ebp + 0x3a], al
jne 0x458841
inc byte [ebp + 0x3b]
cmp byte [ebp + 0x3b], 0
jg 0x458837
mov ecx, dword [ebp + 0x18]
push 1
push ebx
lea eax, [ebp - 8]
push eax
push dword [ebp + 0x24]
call fcn.0044ed7d
mov eax, dword [ebp - 8]
lea ecx, [ebp]
mov dword [ebp + 0x78], eax
call fcn.00439cfd
lea ecx, [ebp + 4]
call fcn.00439cfd
lea ecx, [ebp + 0x10]
call fcn.00439cfd
lea ecx, [ebp - 0x10]
call fcn.00439cfd
lea ecx, [ebp + 8]
call fcn.00439cfd
lea eax, [ebp + 0x78]
push eax
call fcn.00439c95
push 0xa
lea eax, [ebp + 0x78]
push eax
push str.___initram
call fcn.00441bc4
add esp, 0x10
test al, al
je 0x458396
push 3
call fcn.00411b10
pop ecx
xor esi, esi
jmp 0x459867
mov esi, 0x80070057
jmp 0x45983f
cmp esi, ebx
mov dword [ebp - 4], ebx
jne 0x45885a
push 0x5c
push ebx
push edi
mov edi, dword [sym.imp.SHLWAPI.dll_StrRChrW]
call edi
mov esi, eax
cmp esi, ebx
je 0x4588b2
mov ecx, dword [ebp + 0x18]
push 1
push ebx
lea eax, [ebp + 8]
push eax
push dword [ebp + 0x78]
mov word [esi], bx
call fcn.0044ed7d
mov eax, dword [ebp + 8]
push 0x5c
push eax
mov dword [ebp + 0x1c], eax
call dword [sym.imp.SHLWAPI.dll_StrChrW]
cmp eax, ebx
jne 0x45888c
mov esi, 0x80070057
jmp 0x459837
mov ecx, dword [ebp + 0x18]
mov word [eax], bx
inc eax
inc eax
push 1
mov dword [ebp + 0x60], eax
push ebx
lea eax, [ebp - 4]
push eax
add esi, 2
push esi
call fcn.0044ed7d
mov eax, dword [ebp - 4]
mov dword [ebp + 0x40], eax
jmp 0x458935
push 1
push 0x2c
lea eax, [ebp + 0x1c]
push eax
lea ecx, [ebp - 0x20]
call fcn.00451235
push ebx
lea ecx, [ebp + 8]
push ecx
push eax
call fcn.004429d8
mov eax, dword [ebp + 8]
add esp, 0xc
push 0x5c
push eax
mov dword [ebp + 0x1c], eax
call dword [sym.imp.SHLWAPI.dll_StrChrW]
mov esi, eax
cmp esi, ebx
je 0x458882
mov word [esi], bx
inc esi
inc esi
push 0x4b78dc
push esi
mov dword [ebp + 0x60], esi
call dword [sym.imp.SHLWAPI.dll_StrStrW]
cmp byte [ebp + 0x67], 0
mov dword [ebp + 0x40], eax
je 0x458913
cmp eax, ebx
jne 0x458928
push esi
call dword [sym.imp.KERNEL32.DLL_lstrlenW]
lea eax, [esi + eax*2]
mov dword [ebp + 0x40], eax
cmp eax, ebx
jne 0x458928
push 0x5c
push ebx
push esi
call edi
cmp eax, ebx
mov dword [ebp + 0x40], eax
je 0x458882
cmp word [eax], bx
je 0x458935
mov word [eax], bx
inc eax
inc eax
mov dword [ebp + 0x40], eax
cmp word [eax], 0x5c
jne 0x458940
inc eax
inc eax
mov dword [ebp + 0x40], eax
cmp byte [ebp + 0x2b], 0
mov dword [ebp + 0x30], ebx
je 0x458964
lea eax, [ebp + 0x30]
push eax
lea eax, [ebp + 0x44]
push eax
push dword [ebp + 0x18]
call fcn.0044da08
mov eax, dword [ebp + 0x30]
add esp, 0xc
mov dword [ebp + 0x44], eax
jmp 0x458967
mov eax, dword [ebp + 0x44]
cmp byte [ebp + 0x3a], 0x2c
jne 0x4589f8
push 1
push 0x2c
lea eax, [ebp + 0x44]
push eax
lea ecx, [ebp - 0x20]
call fcn.00451235
push ebx
lea ecx, [ebp + 0x10]
push ecx
push eax
call fcn.004429d8
mov ecx, dword [ebp + 0x18]
add esp, 0xc
push ebx
lea eax, [ebp + 0x10]
push eax
call fcn.00402e5f
cmp byte [ebp + 0x6f], 0x2e
jne 0x4589da
mov eax, dword [ebp + 0x44]
cmp word [eax], 0x2c
jne 0x4589da
add dword [ebp + 0x44], 2
push 1
push 0x2c
lea eax, [ebp + 0x44]
push eax
lea ecx, [ebp - 0x20]
call fcn.00451235
push ebx
lea ecx, [ebp]
push ecx
push eax
call fcn.004429d8
mov ecx, dword [ebp + 0x18]
add esp, 0xc
push ebx
lea eax, [ebp]
push eax
call fcn.00402e5f
mov eax, dword [ebp + 0x10]
cmp word [eax], bx
jne 0x458af1
push str.RegDat
lea ecx, [ebp + 0x10]
call fcn.00448401
jmp 0x458af1
cmp byte [ebp + 0x3a], 0x21
je 0x458af1
cmp word [eax], bx
jne 0x458a2b
cmp byte [ebp + 0x6f], 0x24
je 0x458a4a
cmp byte [ebp + 0x6f], 0x2a
je 0x458a2b
cmp byte [ebp + 0x6f], 0x7e
je 0x458a2b
cmp byte [ebp + 0x53], 0
je 0x458af1
mov dword [ebp + 0x68], eax
jmp 0x458af1
cmp byte [ebp + 0x6f], 0x24
je 0x458a4a
cmp byte [ebp + 0x6f], 0x2a
je 0x458a4a
cmp byte [ebp + 0x6f], 0x7e
je 0x458a4a
lea eax, [ebp + 0x44]
push eax
call fcn.00439c95
mov eax, dword [ebp + 0x44]
pop ecx
push eax
lea ecx, [ebp + 0x14]
call fcn.00448399
mov edx, dword [ebp + 0x14]
lea eax, [ebp + 0x78]
push eax
mov dword [ebp + 0x78], edx
call fcn.00439c95
cmp byte [ebp + 0x7c], 0
pop ecx
je 0x458a74
push edx
lea ecx, [ebp + 4]
call fcn.00448401
jmp 0x458a84
mov ecx, dword [ebp + 0x18]
push 1
push ebx
lea eax, [ebp + 4]
push eax
push edx
call fcn.0044dca2
mov eax, dword [ebp + 4]
mov dword [ebp + 0x68], eax
mov dword [ebp + 0x7c], eax
lea eax, [ebp + 0x7c]
push eax
call fcn.00439c95
cmp byte [ebp + 0x6f], 0
pop ecx
jne 0x458acf
push dword [ebp + 0x78]
push 0x4b78c4
call dword [sym.imp.KERNEL32.DLL_lstrcmpW]
test eax, eax
jne 0x458ab8
mov dword [ebp + 0x68], 0x4ae9fc
jmp 0x458ae9
mov ecx, dword [ebp + 0x7c]
mov ax, word [ecx]
cmp ax, 0x23
je 0x458aca
cmp ax, 0x40
jne 0x458ae9
mov dword [ebp + 0x68], ecx
jmp 0x458ae9
cmp byte [ebp + 0x6f], 0x23
je 0x458adb
cmp byte [ebp + 0x6f], 0x40
jne 0x458ae9
mov eax, dword [ebp + 0x7c]
cmp word [eax], bx
mov dword [ebp + 0x68], eax
jne 0x458ae9
mov dword [ebp + 0x68], ebx
lea ecx, [ebp + 0x14]
call fcn.00439cfd
mov edi, dword [ebp + 0x1c]
mov esi, dword [sym.imp.KERNEL32.DLL_lstrcmpiW]
push str.HKLM
push edi
call esi
test eax, eax
je 0x458ba8
push str.HKEY_LOCAL_MACHINE
push edi
call esi
test eax, eax
je 0x458ba8
push str.HKCU
push edi
call esi
test eax, eax
je 0x458b9f
push str.HKEY_CURRENT_USER
push edi
call esi
test eax, eax
je 0x458b9f
push str.HKCR
push edi
call esi
test eax, eax
je 0x458b96
push str.HKEY_CLASSES_ROOT
push edi
call esi
test eax, eax
je 0x458b96
push 0x4b7828
push edi
call esi
test eax, eax
je 0x458b8d
push str.HKEY_USERS
push edi
call esi
test eax, eax
je 0x458b8d
push str.HKCC
push edi
call esi
test eax, eax
je 0x458b84
push str.HKEY_CURRENT_CONFIG
push edi
call esi
test eax, eax
je 0x458b84
mov esi, 0x80070057
jmp 0x45982f
mov dword [ebp + 0x78], 0x80000005
jmp 0x458baf
mov dword [ebp + 0x78], 0x80000003
jmp 0x458baf
mov dword [ebp + 0x78], 0x80000000
jmp 0x458baf
mov dword [ebp + 0x78], 0x80000001
jmp 0x458baf
mov dword [ebp + 0x78], 0x80000002
mov eax, dword [ebp + 0x10]
cmp word [eax], bx
je 0x4592cf
cmp byte [ebp + 0x6f], 0x2e
je 0x458bca
cmp byte [ebp + 0x6f], 0x3f
mov dword [ebp + 0x3c], ebx
jne 0x458bd7
cmp byte [ebp + 0x6f], 0x3f
mov dword [ebp + 0x3c], 1
je 0x458be6
cmp dword [ebp + 0x3c], ebx
je 0x458be1
cmp word [eax], bx
je 0x458be6
mov dword [ebp + 0x4c], ebx
jmp 0x458bed
mov dword [ebp + 0x4c], 1
push ebx
call dword [sym.imp.KERNEL32.DLL_SetLastError]
push 0x64
lea ecx, [ebp + 0x68]
mov dword [ebp + 0xc], ebx
call fcn.0043fdb8
lea ecx, [ebp + 0x2c]
call fcn.0043fd9a
cmp byte [ebp + 0x6f], 0x2e
lea eax, [ebp + 0x2c]
je 0x458c15
lea eax, [ebp + 0x68]
push 0x1000
lea ecx, [ebp + 0x48]
mov dword [ebp + 0x34], eax
call fcn.0043fc43
cmp byte [ebp + 0x67], 0
lea eax, [ebp + 0x7c]
mov dword [ebp + 0x1c], 0xfff
mov dword [ebp + 0x7c], ebx
mov dword [ebp + 0x24], ebx
push eax
je 0x458dbe
movzx eax, word [0x4c8bcc]
or eax, 9
push eax
push ebx
push dword [ebp + 0x60]
mov dword [ebp + 0x40], ebx
push dword [ebp + 0x78]
mov dword [ebp + 0x3c], ebx
mov dword [ebp + 0x4c], ebx
mov dword [ebp + 0x14], ebx
mov dword [ebp - 0x14], ebx
mov dword [ebp + 0x7c], ebx
call dword [sym.imp.ADVAPI32.dll_RegOpenKeyExW]
push ebx
push ebx
mov esi, dword [sym.imp.ADVAPI32.dll_RegQueryInfoKeyW]
push ebx
push ebx
push ebx
push ebx
lea eax, [ebp + 0x4c]
push eax
lea eax, [ebp + 0x3c]
push eax
push ebx
push ebx
push ebx
push dword [ebp + 0x7c]
call esi
push ebx
push ebx
push ebx
lea eax, [ebp - 0x14]
push eax
lea eax, [ebp + 0x14]
push eax
push ebx
lea eax, [ebp + 0x4c]
push eax
lea eax, [ebp + 0x3c]
push eax
push ebx
push ebx
push ebx
push dword [ebp + 0x7c]
call esi
mov dword [ebp + 0x78], eax
mov eax, dword [ebp - 0x14]
cmp dword [ebp + 0x4c], eax
jae 0x458cb0
mov dword [ebp + 0x4c], eax
mov eax, dword [ebp + 0x4c]
lea eax, [eax*4 + 0x20]
mov dword [ebp - 0xc], eax
shr eax, 1
add eax, 8
push eax
lea ecx, [ebp + 0x58]
call fcn.0043fdb8
mov esi, dword [ebp + 0x58]
mov word [esi], 0xd
mov word [esi + 2], 0xa
lea ebx, [esi + 4]
mov word [ebx], 0x76
lea edi, [esi + 8]
mov word [esi + 6], 0x20
and word [edi], 0
cmp byte [ebp + 0x67], 3
mov dword [ebp + 0x60], ebx
je 0x458cf9
mov edi, ebx
cmp dword [ebp + 0x78], 0
jne 0x458da2
test byte [ebp + 0x67], 1
je 0x458d50
and dword [ebp + 0x78], 0
cmp dword [ebp + 0x14], 0
jle 0x458d50
mov eax, dword [ebp - 0xc]
mov dword [ebp + 0x40], eax
xor eax, eax
push eax
push eax
push eax
push eax
mov word [edi], ax
lea eax, [ebp + 0x40]
push eax
push edi
push dword [ebp + 0x78]
push dword [ebp + 0x7c]
call dword [sym.imp.ADVAPI32.dll_RegEnumValueW]
test eax, eax
jne 0x458d45
push dword [ebp + 0x60]
lea ecx, [ebp + 0x68]
call fcn.0043fe06
mov dword [ebp + 0x60], esi
inc dword [ebp + 0x78]
mov eax, dword [ebp + 0x78]
cmp eax, dword [ebp + 0x14]
jl 0x458d13
test byte [ebp + 0x67], 2
mov word [ebx], 0x6b
je 0x458da2
and dword [ebp + 0x78], 0
cmp dword [ebp + 0x3c], 0
jle 0x458da2
xor ebx, ebx
mov eax, dword [ebp - 0xc]
push ebx
push ebx
push ebx
push ebx
mov dword [ebp + 0x40], eax
lea eax, [ebp + 0x40]
push eax
push edi
push dword [ebp + 0x78]
mov word [edi], bx
push dword [ebp + 0x7c]
call dword [sym.imp.ADVAPI32.dll_RegEnumKeyExW]
test eax, eax
jne 0x458d97
push dword [ebp + 0x60]
lea ecx, [ebp + 0x68]
call fcn.0043fe06
mov dword [ebp + 0x60], esi
inc dword [ebp + 0x78]
mov eax, dword [ebp + 0x78]
cmp eax, dword [ebp + 0x3c]
jl 0x458d67
cmp dword [ebp + 0x7c], 0
je 0x458db1
push dword [ebp + 0x7c]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
lea ecx, [ebp + 0x58]
call fcn.00439cfd
jmp 0x45927c
lea eax, [ebp + 0x1c]
push eax
lea eax, [ebp + 0x48]
push eax
push dword [ebp + 0x40]
push dword [ebp + 0x60]
push dword [ebp + 0x78]
call fcn.00443e59
mov esi, dword [ebp + 0x7c]
add esp, 0x18
cmp esi, ebx
mov edi, eax
je 0x458e4b
mov eax, dword [ebp + 0x40]
cmp word [eax], bx
jne 0x458e06
cmp esi, 2
jne 0x458e06
cmp edi, 0xfffffffe
jne 0x458e06
cmp dword [ebp + 0x3c], ebx
je 0x45927e
push 0xffffffffffffffff
push 0xffffffffffffffff
push 0x4b77d8
jmp 0x458e17
cmp dword [ebp + 0x3c], ebx
mov dword [ebp + 0xc], esi
je 0x458e24
push 0xffffffffffffffff
push 0xffffffffffffffff
push str.ERROR
mov ecx, dword [ebp + 0x34]
call fcn.0043fe55
jmp 0x45927e
cmp byte [ebp + 0x29], 0
jne 0x45927e
lea ecx, [ebp + 0x48]
call fcn.00439cfd
lea ecx, [ebp + 0x2c]
call fcn.00439cfd
lea ecx, [ebp + 0x68]
call fcn.00439cfd
jmp 0x45982f
cmp dword [ebp + 0x58], ebx
jl 0x458e6c
jg 0x458e57
cmp dword [ebp + 0x54], ebx
jb 0x458e6c
xor eax, eax
cmp dword [ebp + 0x54], edi
jne 0x458e63
cmp dword [ebp + 0x58], eax
je 0x458e6c
mov dword [ebp + 0x60], 1
jmp 0x458e6f
mov dword [ebp + 0x60], ebx
cmp edi, 1
mov byte [ebp + 0x7b], 0
mov byte [ebp + 0x7f], 0xff
mov eax, str.REG_SZ
jne 0x458e89
mov bl, 0x24
mov byte [ebp + 0x7f], 0
jmp 0x458ea3
cmp edi, 6
jne 0x458e97
mov eax, str.REG_LINK
mov bl, 0x5e
jmp 0x458ea3
cmp edi, 0x15
jne 0x458efa
mov eax, str.REG_MUI_SZ
mov bl, 0x75
xor esi, esi
cmp dword [ebp + 0x3c], esi
je 0x458ec0
mov ecx, dword [ebp + 0x34]
push 0xffffffffffffffff
push 0xffffffffffffffff
push eax
call fcn.0043fe55
cmp dword [ebp + 0x4c], esi
jne 0x45927c
cmp dword [ebp + 0x60], esi
jne 0x459217
cmp dword [ebp + 0x58], esi
jg 0x458ee9
jl 0x458ed5
cmp dword [ebp + 0x54], esi
jae 0x458ee9
mov al, byte [ebp + 0x6f]
cmp bl, al
je 0x458ee9
cmp al, 0x2e
je 0x458ee9
cmp byte [ebp + 0x7f], al
jne 0x459217
mov eax, dword [ebp + 0x68]
mov ecx, dword [ebp + 0x48]
mov dword [ebp + 0x68], ecx
mov dword [ebp + 0x48], eax
jmp 0x45927c
cmp edi, 0xb
jne 0x458f60
cmp dword [ebp + 0x3c], ebx
je 0x458f1e
mov ecx, dword [ebp + 0x34]
push 0xffffffffffffffff
push 0xffffffffffffffff
push str.REG_QWORD
call fcn.0043fe55
cmp dword [ebp + 0x4c], ebx
jne 0x45927c
cmp dword [ebp + 0x60], ebx
jne 0x459217
cmp dword [ebp + 0x58], ebx
jg 0x458f43
jl 0x458f33
cmp dword [ebp + 0x54], ebx
jae 0x458f43
cmp byte [ebp + 0x6f], 0x2b
je 0x458f43
cmp byte [ebp + 0x6f], 0x2e
jne 0x459217
mov eax, dword [ebp + 0x48]
push str.0x_I64x
push dword [eax + 4]
push dword [eax]
push dword [ebp + 0x68]
call fcn.0048c9e0
add esp, 0x10
jmp 0x45927c
cmp edi, 4
mov esi, dword [ebp + 0x48]
jne 0x458fad
cmp dword [ebp + 0x3c], ebx
je 0x458f87
mov ecx, dword [ebp + 0x34]
push 0xffffffffffffffff
push 0xffffffffffffffff
push str.REG_DWORD
call fcn.0043fe55
cmp dword [ebp + 0x4c], ebx
jne 0x45927c
cmp dword [ebp + 0x60], ebx
jne 0x459217
cmp dword [ebp + 0x58], ebx
jg 0x45900c
jl 0x458f9c
cmp dword [ebp + 0x54], ebx
jae 0x45900c
cmp byte [ebp + 0x6f], 0x23
je 0x45900c
cmp byte [ebp + 0x6f], 0x2e
je 0x45900c
jmp 0x459217
cmp edi, 5
jne 0x459024
cmp dword [ebp + 0x3c], ebx
je 0x458fd1
mov ecx, dword [ebp + 0x34]
push 0xffffffffffffffff
push 0xffffffffffffffff
push str.REG_DWORD_BIG_ENDIAN
call fcn.0043fe55
cmp dword [ebp + 0x4c], ebx
jne 0x45927c
cmp dword [ebp + 0x60], ebx
jne 0x459217
cmp dword [ebp + 0x58], ebx
jg 0x458ff6
jl 0x458fe6
cmp dword [ebp + 0x54], ebx
jae 0x458ff6
cmp byte [ebp + 0x6f], 0x62
je 0x458ff6
cmp byte [ebp + 0x6f], 0x2e
jne 0x459217
mov cl, byte [esi + 3]
mov al, byte [esi]
mov byte [esi], cl
mov byte [esi + 3], al
mov cl, byte [esi + 2]
mov al, byte [esi + 1]
mov byte [esi + 1], cl
mov byte [esi + 2], al
push dword [esi]
push str.0x_x
push dword [ebp + 0x68]
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0xc
jmp 0x45927c
cmp edi, 2
jne 0x459092
cmp dword [ebp + 0x3c], ebx
je 0x459048
mov ecx, dword [ebp + 0x34]
push 0xffffffffffffffff
push 0xffffffffffffffff
push str.REG_EXPAND_SZ
call fcn.0043fe55
cmp dword [ebp + 0x4c], ebx
jne 0x45927c
cmp dword [ebp + 0x60], ebx
jne 0x459217
cmp dword [ebp + 0x58], ebx
jg 0x45906d
jl 0x45905d
cmp dword [ebp + 0x54], ebx
jae 0x45906d
cmp byte [ebp + 0x6f], 0x7e
je 0x45906d
cmp byte [ebp + 0x6f], 0x2e
jne 0x459217
cmp byte [ebp + 0x5f], 0
je 0x458ee9
mov eax, dword [ebp + 0x48]
push 1
push ebx
lea ecx, [ebp + 0x68]
push ecx
mov ecx, dword [ebp + 0x18]
push eax
mov dword [ebp + 0x44], eax
call fcn.0044ed7d
jmp 0x45927c
cmp edi, 7
jne 0x459175
cmp dword [ebp + 0x3c], ebx
je 0x4590ba
mov ecx, dword [ebp + 0x34]
push 0xffffffffffffffff
push 0xffffffffffffffff
push str.REG_MULTI_SZ
call fcn.0043fe55
cmp dword [ebp + 0x4c], ebx
jne 0x45927c
cmp dword [ebp + 0x60], ebx
jne 0x459217
cmp dword [ebp + 0x58], ebx
jg 0x4590df
jl 0x4590cf
cmp dword [ebp + 0x54], ebx
jae 0x4590df
cmp byte [ebp + 0x6f], 0x2a
je 0x4590df
cmp byte [ebp + 0x6f], 0x2e
jne 0x459217
mov esi, dword [ebp + 0x1c]
shr esi, 1
lea eax, [esi*4 + 6]
push eax
lea ecx, [ebp + 0x68]
call fcn.0043fddf
mov ecx, dword [ebp + 0x48]
mov eax, dword [ebp + 0x68]
lea esi, [ecx + esi*2]
jmp 0x459169
cmp byte [ebp + 0x5f], 0x2a
jne 0x459130
cmp word [ecx], 0x5c
jne 0x459130
lea edx, [ecx + 2]
mov di, word [edx]
cmp di, 0x30
je 0x459122
cmp di, 0x5c
je 0x459122
cmp di, bx
jne 0x459130
mov word [eax], 0x5c
mov ecx, edx
mov dx, word [ecx]
inc eax
inc eax
jmp 0x459138
mov dx, word [ecx]
cmp dx, bx
je 0x459141
mov word [eax], dx
inc eax
inc eax
inc ecx
inc ecx
jmp 0x459169
inc ecx
inc ecx
cmp byte [ebp + 0x5f], 0x24
jne 0x45915b
cmp ecx, esi
jae 0x45916d
mov word [eax], 0xd
inc eax
inc eax
mov word [eax], 0xa
jmp 0x459167
mov word [eax], 0x5c
inc eax
inc eax
mov word [eax], 0x30
inc eax
inc eax
cmp ecx, esi
jb 0x4590ff
mov word [eax], bx
jmp 0x45927c
cmp edi, 3
jne 0x459181
mov eax, str.REG_BINARY
jmp 0x4591ae
cmp edi, ebx
jne 0x45918c
mov eax, str.REG_NONE
jmp 0x4591ae
cmp edi, 8
jne 0x459198
mov eax, str.REG_RESOURCE_LIST
jmp 0x4591ae
cmp edi, 9
jne 0x4591a4
mov eax, str.REG_FULL_RESOURCE_DESCRIPTOR
jmp 0x4591ae
cmp edi, 0xa
jne 0x4591cf
mov eax, str.REG_RESOURCE_REQUIREMENTS_LIST
cmp dword [ebp + 0x3c], ebx
je 0x4591c9
mov ecx, dword [ebp + 0x34]
push 0xffffffffffffffff
push 0xffffffffffffffff
push eax
call fcn.0043fe55
cmp dword [ebp + 0x4c], ebx
jne 0x45927c
mov byte [ebp + 0x7b], 0x40
jmp 0x4591fa
cmp dword [ebp + 0x3c], ebx
je 0x4591fa
mov esi, dword [ebp + 0x34]
push 0x32
mov ecx, esi
call fcn.0043fddf
push edi
push str.0x_lx
push dword [esi]
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0xc
cmp dword [ebp + 0x4c], ebx
jne 0x45927c
cmp dword [ebp + 0x58], ebx
jg 0x459212
jl 0x459206
cmp dword [ebp + 0x54], ebx
jae 0x459212
mov al, byte [ebp + 0x6f]
cmp byte [ebp + 0x7b], al
je 0x459212
cmp al, 0x2e
jne 0x459217
cmp dword [ebp + 0x60], ebx
je 0x459234
lea ecx, [ebp + 0x48]
call fcn.00439cfd
lea ecx, [ebp + 0x2c]
call fcn.00439cfd
lea ecx, [ebp + 0x68]
call fcn.00439cfd
jmp 0x458b7a
mov eax, dword [ebp + 0x1c]
lea eax, [eax + eax*4 + 7]
push eax
lea ecx, [ebp + 0x68]
call fcn.0043fddf
mov edi, dword [ebp + 0x68]
mov esi, dword [ebp + 0x48]
xor ebx, ebx
mov word [edi], bx
mov word [edi + 2], bx
cmp dword [ebp + 0x1c], ebx
mov dword [ebp + 0x24], 1
jle 0x45927c
movzx eax, byte [esi]
push eax
push str._0x_02X
push edi
call dword [sym.imp.USER32.dll_wsprintfW]
add esp, 0xc
inc esi
inc ebx
add edi, 0xa
cmp ebx, dword [ebp + 0x1c]
jl 0x45925f
xor ebx, ebx
mov eax, dword [ebp + 0x10]
cmp word [eax], bx
je 0x459299
mov edx, dword [ebp + 0x68]
mov ecx, dword [ebp + 0x24]
lea ecx, [edx + ecx*2]
push ecx
mov ecx, dword [ebp + 0x18]
push eax
call fcn.0043f62b
mov eax, dword [ebp]
cmp word [eax], bx
je 0x4592af
mov ecx, dword [ebp + 0x34]
push dword [ecx]
mov ecx, dword [ebp + 0x18]
push eax
call fcn.0043f62b
lea ecx, [ebp + 0x48]
call fcn.00439cfd
lea ecx, [ebp + 0x2c]
call fcn.00439cfd
lea ecx, [ebp + 0x68]
call fcn.00439cfd
mov esi, dword [ebp + 0xc]
jmp 0x45982f
cmp dword [ebp + 0x68], ebx
je 0x4597a7
xor edx, edx
cmp byte [ebp + 0x66], dl
push 8
mov dword [ebp + 0x7c], edx
pop edi
mov dword [ebp + 0x20], edx
mov dword [ebp + 0x24], edx
lea ebx, [ebp + 0x20]
jg 0x4592f3
cmp byte [ebp + 0x53], dl
je 0x45931e
movsx eax, byte [ebp + 0x66]
push eax
push dword [ebp + 0x60]
push dword [ebp + 0x78]
call fcn.0043d387
add esp, 0xc
cmp byte [ebp + 0x66], 2
mov esi, eax
jge 0x45979a
cmp byte [ebp + 0x53], 0
jne 0x45979a
xor edx, edx
mov cl, byte [ebp + 0x6f]
cmp cl, 0x2b
je 0x4596ed
test cl, cl
jne 0x459344
mov esi, dword [ebp + 0x68]
mov ax, word [esi]
cmp ax, 0x2b
jne 0x459382
inc esi
inc esi
mov dword [ebp + 0x68], esi
jmp 0x4596f0
cmp cl, 0x23
je 0x459673
cmp cl, 0x62
jne 0x459430
cmp byte [ebp + 0x64], 0
mov dword [ebp + 0x54], 5
mov dword [ebp + 0x58], edx
je 0x459396
movsx eax, byte [ebp + 0x65]
push eax
lea eax, [ebp + 0x7c]
push eax
push dword [ebp + 0x68]
call fcn.00443f48
mov ebx, dword [ebp + 0x7c]
add esp, 0xc
jmp 0x459406
cmp ax, 0x23
jne 0x45945b
inc esi
inc esi
mov dword [ebp + 0x68], esi
jmp 0x459676
cmp byte [ebp + 0x65], 0
je 0x4593d6
mov edx, dword [ebp + 0x68]
xor ecx, ecx
mov cx, word [edx]
mov eax, ecx
call fcn.0043f8ad
test al, al
je 0x4594be
cmp cx, 0x30
jne 0x4593ca
mov ax, word [edx + 2]
or ax, 0x20
cmp ax, 0x78
jne 0x4593ca
add edx, 4
push edx
call fcn.00440882
pop ecx
mov dword [ebp + 0x20], eax
jmp 0x4593ee
lea eax, [ebp + 0x20]
push eax
lea eax, [ebp + 0x68]
push eax
call fcn.0044b46e
cmp eax, 1
pop ecx
pop ecx
jl 0x45975b
mov al, byte [ebp + 0x20]
mov cl, byte [ebp + 0x23]
mov byte [ebp + 0x20], cl
mov cl, byte [ebp + 0x22]
mov byte [ebp + 0x23], al
mov al, byte [ebp + 0x21]
mov byte [ebp + 0x21], cl
mov byte [ebp + 0x22], al
push 4
pop edi
push edi
push ebx
push dword [ebp + 0x54]
xor esi, esi
cmp byte [ebp + 0x2a], 0
push dword [ebp + 0x40]
push dword [ebp + 0x60]
push dword [ebp + 0x78]
je 0x45976b
call dword [0x4c918c]
mov esi, eax
jmp 0x459773
cmp cl, 0x2a
je 0x459569
cmp cl, 0x7e
je 0x459500
cmp cl, 0x40
je 0x4594f1
cmp cl, 0x6e
mov esi, dword [ebp + 0x68]
jne 0x459485
mov dword [ebp + 0x54], edx
jmp 0x4594fb
cmp ax, 0x2a
jne 0x45946b
inc esi
inc esi
mov dword [ebp + 0x68], esi
jmp 0x45956c
cmp ax, 0x7e
jne 0x45947b
push 2
pop edi
add esi, edi
jmp 0x459506
cmp ax, 0x40
jne 0x459485
inc esi
inc esi
jmp 0x4594f4
cmp dword [ebp + 0x58], edx
jg 0x45957c
jl 0x459499
cmp dword [ebp + 0x54], edx
jae 0x45957c
cmp cl, 0x5e
jne 0x4594a7
mov dword [ebp + 0x54], 6
jmp 0x4594d2
cmp cl, 0x75
jne 0x4594b5
mov dword [ebp + 0x54], 0x15
jmp 0x4594d2
test cl, cl
je 0x4594cb
cmp cl, 0x24
je 0x4594cb
lea ecx, [ebp + 0x7c]
call fcn.00439cfd
jmp 0x458b7a
mov dword [ebp + 0x54], 1
cmp byte [ebp + 0x64], 0
mov dword [ebp + 0x58], edx
jne 0x45957c
push esi
call dword [sym.imp.KERNEL32.DLL_lstrlenW]
mov edi, eax
shl edi, 1
mov ebx, esi
jmp 0x459409
mov esi, dword [ebp + 0x68]
mov dword [ebp + 0x54], 3
mov dword [ebp + 0x58], edx
jmp 0x45957c
mov esi, dword [ebp + 0x68]
push 2
pop edi
cmp byte [ebp + 0x64], 0
mov dword [ebp + 0x54], edi
mov dword [ebp + 0x58], edx
jne 0x45957c
push esi
call dword [sym.imp.KERNEL32.DLL_lstrlenW]
add eax, 2
push eax
lea ecx, [ebp + 0x7c]
call fcn.0043fddf
cmp word [esi], 0
mov ebx, dword [ebp + 0x7c]
mov ecx, esi
mov eax, ebx
je 0x45955a
mov dx, word [ecx]
cmp dx, 0x5c
jne 0x45954d
cmp word [ecx + 2], 0x30
jne 0x45954d
and word [eax], 0
add eax, edi
add ecx, 4
jmp 0x459554
mov word [eax], dx
add eax, edi
add ecx, edi
cmp word [ecx], 0
jne 0x459532
and word [eax], 0
sub eax, ebx
add eax, edi
mov edi, eax
jmp 0x459409
mov esi, dword [ebp + 0x68]
cmp byte [ebp + 0x64], 0
mov dword [ebp + 0x54], 7
mov dword [ebp + 0x58], edx
je 0x459592
movsx eax, byte [ebp + 0x65]
push eax
lea eax, [ebp + 0x7c]
push eax
push esi
call fcn.00443f48
mov edi, eax
jmp 0x459694
mov esi, dword [ebp + 0x68]
push esi
call dword [sym.imp.KERNEL32.DLL_lstrlenW]
mov ebx, eax
lea eax, [ebx + 0x10]
push eax
lea ecx, [ebp + 0x7c]
xor edi, edi
call fcn.0043fddf
mov edx, dword [ebp + 0x7c]
lea ecx, [esi + ebx*2]
cmp esi, ecx
mov eax, esi
mov dword [ebp + 0xc], ecx
jae 0x4595f0
and word [edx], 0
cmp byte [ebp + 0x5f], 0x2a
jne 0x459627
cmp word [eax], 0x5c
jne 0x459654
lea ecx, [eax + 2]
cmp word [ecx], 0x5c
jne 0x459654
mov eax, ecx
mov cx, word [eax]
mov word [edx], cx
inc edx
inc edx
inc eax
inc eax
xor edi, edi
cmp eax, dword [ebp + 0xc]
jb 0x4595bb
cmp edi, 1
jge 0x4595f7
and word [edx], 0
inc edi
inc edx
inc edx
test ebx, ebx
jle 0x459617
cmp edi, 2
jge 0x459617
push 2
pop esi
sub esi, edi
xor eax, eax
mov ecx, esi
shr ecx, 1
mov edi, edx
rep stosd dword es:[edi], eax
adc ecx, ecx
rep stosw word es:[edi], ax
lea edx, [edx + esi*2]
mov ebx, dword [ebp + 0x7c]
and word [edx], 0
sub edx, ebx
mov edi, edx
jmp 0x459409
cmp byte [ebp + 0x5f], 0x24
jne 0x459654
mov cx, word [eax]
cmp cx, 0xd
jne 0x459643
lea esi, [eax + 2]
cmp word [esi], 0xa
jne 0x459643
mov eax, esi
jmp 0x459649
cmp cx, 0xa
jne 0x4595dd
and word [edx], 0
inc eax
inc eax
inc edx
inc edx
inc edi
jmp 0x4595e6
mov cx, word [eax]
cmp cx, 0x5c
jne 0x4595dd
cmp word [eax + 2], 0x30
jne 0x4595dd
and word [edx], 0
inc edx
inc edx
add eax, 4
jmp 0x459651
mov esi, dword [ebp + 0x68]
cmp byte [ebp + 0x64], 0
push 4
pop edi
mov dword [ebp + 0x54], edi
mov dword [ebp + 0x58], edx
je 0x45969f
movsx eax, byte [ebp + 0x65]
push eax
lea eax, [ebp + 0x7c]
push eax
push esi
call fcn.00443f48
mov ebx, dword [ebp + 0x7c]
add esp, 0xc
jmp 0x459409
cmp byte [ebp + 0x65], 0
je 0x4596de
xor ecx, ecx
mov cx, word [esi]
mov eax, ecx
call fcn.0043f8ad
test al, al
je 0x4594be
cmp cx, 0x30
jne 0x4596cf
mov ax, word [esi + 2]
or ax, 0x20
cmp ax, 0x78
jne 0x4596cf
add esi, edi
push esi
call fcn.00440882
pop ecx
mov dword [ebp + 0x20], eax
jmp 0x459409
lea eax, [ebp + 0x20]
push eax
lea eax, [ebp + 0x68]
push eax
call fcn.0044b46e
jmp 0x459750
mov esi, dword [ebp + 0x68]
cmp byte [ebp + 0x64], 0
mov dword [ebp + 0x54], 0xb
mov dword [ebp + 0x58], edx
jne 0x459685
cmp byte [ebp + 0x65], 0
je 0x459743
xor ecx, ecx
mov cx, word [esi]
mov eax, ecx
call fcn.0043f8ad
test al, al
je 0x4594be
cmp cx, 0x30
jne 0x459731
mov ax, word [esi + 2]
or ax, 0x20
cmp ax, 0x78
jne 0x459731
add esi, 4
push esi
call fcn.00440882
pop ecx
mov dword [ebp + 0x20], eax
mov dword [ebp + 0x24], edx
jmp 0x459409
lea eax, [ebp + 0x20]
push eax
lea eax, [ebp + 0x68]
push eax
call fcn.0044b318
cmp eax, 1
pop ecx
pop ecx
jge 0x459409
lea ecx, [ebp + 0x7c]
call fcn.00439cfd
xor esi, esi
inc esi
jmp 0x45982f
call fcn.0043add9
add esp, 0x18
cmp esi, 0x3fd
jne 0x45979a
cmp byte [ebp + 0x66], 0
jne 0x45979a
push 1
push dword [ebp + 0x60]
mov byte [ebp + 0x66], 1
push dword [ebp + 0x78]
call fcn.0043d387
add esp, 0xc
jmp 0x459409
lea ecx, [ebp + 0x7c]
call fcn.00439cfd
jmp 0x45982f
cmp byte [ebp + 0x3a], 0x21
jne 0x4597d9
mov eax, dword [ebp + 0x40]
cmp word [eax], bx
jne 0x4597d9
cmp dword [ebp + 0x4c], ebx
je 0x4597ca
push dword [ebp + 0x4c]
push dword [ebp + 0x60]
push dword [ebp + 0x78]
call fcn.00449946
jmp 0x459823
push dword [ebp + 0x60]
push dword [ebp + 0x78]
call fcn.00449745
pop ecx
pop ecx
jmp 0x459826
cmp dword [ebp + 0x4c], ebx
je 0x459815
push ebx
lea eax, [ebp + 0x7c]
push eax
movzx eax, word [0x4c8bcc]
push ebx
or eax, 0x2001b
push eax
push ebx
push ebx
push ebx
push dword [ebp + 0x60]
mov dword [ebp + 0x7c], ebx
push dword [ebp + 0x78]
call dword [sym.imp.ADVAPI32.dll_RegCreateKeyExW]
cmp dword [ebp + 0x7c], ebx
mov esi, eax
je 0x459828
push dword [ebp + 0x7c]
call dword [sym.imp.ADVAPI32.dll_RegCloseKey]
jmp 0x459828
push dword [ebp + 0x40]
push dword [ebp + 0x60]
push dword [ebp + 0x78]
call fcn.0043ae25
add esp, 0xc
mov esi, eax
cmp esi, 2
jne 0x45982f
xor esi, esi
lea ecx, [ebp + 0x30]
call fcn.00439cfd
lea ecx, [ebp - 4]
call fcn.00439cfd
lea ecx, [ebp]
call fcn.00439cfd
lea ecx, [ebp + 4]
call fcn.00439cfd
lea ecx, [ebp + 0x10]
call fcn.00439cfd
lea ecx, [ebp - 0x10]
call fcn.00439cfd
lea ecx, [ebp + 8]
call fcn.00439cfd
lea ecx, [ebp - 8]
call fcn.00439cfd
lea ecx, [ebp - 0x20]
call fcn.00439cfd
pop edi
mov eax, esi
pop esi
pop ebx
add ebp, 0x70
leave
ret 8