Function at 0x4613e2
Capabilities:
Encrypt data using rc4 ksa
Set current directory

Disassembly:
push ebp
mov ebp, esp
mov eax, 0x4d6c
call fcn.00483980
push ebx
mov ebx, dword [ebp + 0x10]
push esi
mov esi, dword [ebp + 0xc]
push edi
mov edi, dword [ebp + 8]
lea eax, [ebp - 0x18]
push eax
push ebx
push esi
push edi
call fcn.004201e2
test eax, eax
je 0x461413
mov eax, dword [ebp - 0x18]
jmp 0x4614c8
mov eax, 0x264
cmp esi, eax
jg 0x4624f2
je 0x4624e8
mov eax, 0x128
cmp esi, eax
jg 0x461e98
je case.0x461ad6.290
add eax, 0xffffffab
cmp esi, eax
jg 0x461ac0
je 0x461aad
cmp esi, 0x7a
jg 0x461799
je 0x461752
cmp esi, 0x68
jg 0x4615f9
je 0x4615db
xor edi, edi
sub esi, edi
je 0x4615d1
dec esi
je 0x4615c7
sub esi, 0x63
je 0x4614fd
dec esi
je 0x462b7b
dec esi
je 0x462b67
dec esi
jne case.default.0x462e6f
cmp ebx, edi
jne 0x4614cd
mov eax, dword [0x4adbcc]
cmp eax, edi
je case.default.0x462e6f
mov ecx, dword [0x4adbc8]
push eax
mov byte [ecx + eax], 0
mov dword [0x4adbc8], edi
call dword [sym.imp.KERNEL32.dll_SetCurrentDirectoryA]
push dword [0x4adbcc]
call dword [sym.imp.KERNEL32.dll_GlobalFree]
mov dword [0x4adbcc], edi
xor eax, eax
inc eax
pop edi
pop esi
pop ebx
leave
ret
cmp dword [0x4adbc8], edi
jne 0x4614e7
push 0x104
push 0x40
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov dword [0x4adbcc], eax
mov ecx, dword [0x4adbc8]
mov eax, dword [0x4adbcc]
inc dword [0x4adbc8]
mov byte [ecx + eax], bl
jmp case.default.0x462e6f
cmp ebx, 0xffff
jbe 0x461557
mov eax, dword [ebx + 4]
cmp eax, edi
je 0x461543
push edi
push eax
lea ecx, [ebp - 0x10]
call fcn.00402d0e
push dword [ebx]
mov esi, dword [eax]
lea ecx, [ebp - 0x350c]
call fcn.0040979b
push dword [ebx + 8]
push esi
push eax
call fcn.0043e6e8
push dword [ebp - 0x10]
call dword [sym.imp.NSCRT.dll_free]
add esp, 0x10
mov dword [ebp - 0x10], edi
jmp 0x462bc5
push dword [ebx]
lea ecx, [ebp - 0x24cc]
call fcn.0040979b
push edi
push eax
jmp 0x462bbe
cmp ebx, edi
jne 0x461594
mov eax, dword [0x4adbc4]
cmp eax, edi
je case.default.0x462e6f
push eax
lea ecx, [ebp - 0x454c]
call fcn.0040979b
push edi
push eax
call fcn.0043fc9b
pop ecx
pop ecx
push dword [0x4adbc4]
call dword [sym.imp.KERNEL32.dll_GlobalFree]
mov dword [0x4adbc4], edi
jmp 0x462bc5
cmp dword [0x4adbc0], edi
jne 0x4615ae
push 0x104
push 0x40
call dword [sym.imp.KERNEL32.dll_GlobalAlloc]
mov dword [0x4adbc4], eax
mov ecx, dword [0x4adbc0]
mov eax, dword [0x4adbc4]
inc dword [0x4adbc0]
mov byte [ecx + eax], bl
jmp case.default.0x462e6f
mov eax, str.5.56
jmp 0x4614c8
mov eax, 0x5056
jmp 0x4614c8
mov eax, dword [0x4ac358]
neg eax
sbb eax, eax
xor ecx, ecx
and eax, 2
cmp dword [0x4ac35c], ecx
setne cl
or eax, ecx
jmp 0x4614c8
sub esi, 0x69
je 0x4616d4
dec esi
je 0x461660
sub esi, 3
je case.0x46252e.617
sub esi, 0xb
je 0x46162a
dec esi
jne case.default.0x462e6f
push ebx
call fcn.0043ebe1
pop ecx
push 0
push 0
jmp 0x46295b
push 1
push 1
push 0x49d978
call fcn.0046dc77
push 1
push 1
push 0x49fb70
call fcn.0046dc77
add esp, 0x18
call fcn.0043d213
test eax, eax
je case.0x46252e.636
call fcn.0043d54e
jmp 0x4614c8
xor esi, esi
cmp dword [0x4ac35c], esi
je case.0x46252e.636
mov eax, dword [0x4a63a4]
cmp eax, esi
je case.0x46252e.636
cmp dword [eax + 0x14], esi
je case.0x46252e.636
call fcn.0043d54e
push eax
call fcn.0043d09d
test eax, eax
pop ecx
jne case.0x46252e.636
cmp ebx, esi
jge 0x46169e
xor ebx, ebx
push ebx
call fcn.0042b80f
test eax, eax
pop ecx
push esi
jge 0x4616bc
push esi
push 0x402
push edi
call dword [sym.imp.USER32.dll_SendMessageA]
jmp case.default.0x462e6f
call fcn.0042b701
cdq
mov ecx, 0x3e8
idiv ecx
push eax
call fcn.0041a6c9
jmp 0x462d1c
xor ecx, ecx
cmp ebx, ecx
jne 0x4616f0
cmp dword [0x4ac35c], ecx
je case.0x46252e.636
call fcn.0042b701
jmp 0x4614c8
cmp ebx, 1
jne 0x461720
cmp dword [0x4ac35c], ecx
je 0x461716
mov eax, dword [0x4a63a4]
cmp eax, ecx
je 0x461716
call dword [eax + 0x4c]
cdq
mov ecx, 0x3e8
idiv ecx
jmp 0x4614c8
call fcn.0043cf56
jmp 0x4614c8
cmp ebx, 2
jne case.0x46252e.617
cmp dword [0x4ac35c], ecx
je 0x461742
mov eax, dword [0x4a63a4]
cmp eax, ecx
je 0x461742
call dword [eax + 0x4c]
jmp 0x4614c8
call fcn.0043cf56
imul eax, eax, 0x3e8
jmp 0x4614c8
cmp ebx, 0xfffffd66
jne 0x461766
movzx eax, byte [0x49bcc0]
jmp 0x4614c8
cmp bl, 0xff
mov byte [0x49bcc0], bl
jbe 0x461778
mov byte [0x49bcc0], 0xff
movzx eax, byte [0x49bcc0]
push eax
call fcn.0042b74d
movzx eax, byte [0x49bcc0]
push 0
push eax
call fcn.00450866
jmp 0x462f7a
mov eax, 0x80
cmp esi, eax
jg 0x46199e
je 0x4618b6
sub esi, 0x7b
je 0x461867
dec esi
je 0x46185d
dec esi
je 0x461656
dec esi
je 0x46181b
dec esi
jne case.default.0x462e6f
cmp ebx, 9
mov dword [0x4adbbc], ebx
ja 0x4617e4
movzx eax, byte [ebx + 0x49c498]
jmp 0x4614c8
cmp ebx, 0xa
jne 0x4617f5
movzx eax, byte [0x49bcf8]
jmp 0x4614c8
cmp ebx, 0xb
jne 0x461806
movzx eax, byte [0x49f019]
jmp 0x4614c8
cmp ebx, 0xc
jne case.0x46252e.617
movzx eax, byte [0x49de98]
jmp 0x4614c8
test ebx, ebx
jne 0x461829
mov eax, dword [0x4b0604]
jmp 0x4614c8
cmp ebx, 1
jne 0x461838
mov eax, dword [0x4b0a14]
jmp 0x4614c8
cmp ebx, 2
jne 0x461847
mov eax, dword [0x4b0a08]
jmp 0x4614c8
mov eax, ebx
sub eax, 5
neg eax
sbb eax, eax
not eax
and eax, dword [0x4b0618]
jmp 0x4614c8
call fcn.0043d213
jmp 0x4614c8
cmp ebx, 0xfffffd66
jne 0x46187b
movsx eax, byte [0x49f434]
jmp 0x4614c8
cmp bl, 0x81
mov al, bl
mov byte [0x49f434], al
jge 0x46188e
mov al, 0x81
mov byte [0x49f434], al
cmp al, 0x7f
jle 0x461899
mov al, 0x7f
mov byte [0x49f434], al
movsx eax, al
push 0
push eax
call fcn.004506b0
movsx eax, byte [0x49f434]
push eax
call fcn.0042b7ae
jmp 0x462f7a
mov esi, dword [0x4adbbc]
mov eax, ebx
and eax, 0xff000000
cmp eax, 0xdb000000
jne 0x4618ce
movzx esi, byte [ebp + 0x12]
xor edi, edi
and ebx, 0xffff
cmp esi, edi
jl 0x4618e7
cmp esi, 9
jg 0x4618e7
mov byte [esi + 0x49c498], bl
jmp 0x46190c
cmp esi, 0xa
jne 0x4618f4
mov byte [0x49bcf8], bl
jmp 0x461935
cmp esi, 0xb
jne 0x461901
mov byte [0x49f019], bl
jmp 0x461916
cmp esi, 0xc
jne 0x46190c
mov byte [0x49de98], bl
cmp esi, 0xb
je 0x461916
cmp esi, 0xc
jne 0x461935
movzx eax, byte [0x49de98]
push edi
push edi
push eax
movzx eax, byte [0x49f019]
push eax
call fcn.0044ee7a
add esp, 0x10
cmp esi, 0xc
je 0x461952
movzx eax, byte [0x49bcf8]
push eax
movzx eax, byte [0x49f019]
push 0x49c498
push eax
call fcn.0042be36
add esp, 0xc
cmp dword [0x49bcd4], edi
je 0x46197f
cmp esi, edi
jl 0x46197f
cmp esi, 0xa
jg 0x46197f
mov eax, esi
sub eax, 0xa
inc esi
neg eax
push edi
sbb eax, eax
and eax, esi
push ebx
push eax
call fcn.0044edba
add esp, 0xc
call fcn.0044eef8
push 0x25b
push 3
push 0x400
push dword [0x4ac344]
call dword [sym.imp.USER32.dll_PostMessageA]
xor eax, eax
jmp 0x4614c8
sub esi, 0x81
je 0x461aa3
sub esi, 6
je 0x461a8e
sub esi, 0x41
je 0x461a23
dec esi
je 0x4619d2
dec esi
jne case.default.0x462e6f
test ebx, ebx
je case.0x46252e.617
push ebx
push edi
call fcn.0042e789
jmp 0x462d1c
mov edi, dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
xor esi, esi
cmp ebx, esi
je 0x4619f9
push esi
push esi
push 0x103
push ebx
push 0xffffffffffffffff
push 0x49e6d8
push esi
push esi
call edi
cmp eax, esi
je 0x4619f9
mov byte [eax + ebx], 0
push esi
push esi
push 0x103
mov ebx, 0x4adab8
push ebx
push 0xffffffffffffffff
push 0x4a0298
push esi
push esi
call edi
cmp eax, esi
je 0x461a1c
mov byte [eax + 0x4adab8], 0
mov eax, ebx
jmp 0x4614c8
test ebx, ebx
je case.0x46252e.617
push ebx
call dword [sym.imp.KERNEL32.dll_lstrlenA]
test eax, eax
je case.0x46252e.617
push 0
push ebx
lea ecx, [ebp - 4]
call fcn.00402d0e
push dword [ebp - 4]
mov esi, 0x4a0298
push esi
call dword [sym.imp.NSCRT.dll__wcsicmp]
test eax, eax
pop ecx
pop ecx
je 0x461a80
push dword [ebp - 4]
push 0x104
push esi
call fcn.0047aaff
push 0
push 0x9d63
push 0x111
push dword [0x4ac344]
call dword [sym.imp.USER32.dll_SendMessageA]
push dword [ebp - 4]
call dword [sym.imp.NSCRT.dll_free]
jmp 0x462f24
push edi
mov dword [0x4ac338], 1
call fcn.004567f9
jmp 0x462f24
mov eax, 0x49dea0
jmp 0x4614c8
push 0
mov esi, 0x4ad6a8
push esi
push ebx
call fcn.0043e210
jmp 0x461cc3
lea eax, [esi - 0xd4]
cmp eax, 0x53
ja case.default.0x462e6f
movzx eax, byte [eax + 0x4631a2]
jmp dword [eax*4 + 0x463142]
test ebx, ebx
jne 0x461aeb
mov eax, dword [0x4b0610]
jmp 0x4614c8
cmp ebx, 1
jne 0x461afa
mov eax, dword [0x4b0400]
jmp 0x4614c8
mov eax, ebx
dec eax
dec eax
neg eax
sbb eax, eax
not eax
and eax, dword [0x4b06e8]
jmp 0x4614c8
test ebx, ebx
jne 0x461b1d
mov eax, dword [0x49bcd4]
jmp 0x4614c8
mov eax, ebx
dec eax
neg eax
sbb eax, eax
not eax
and eax, dword [0x49bce4]
jmp 0x4614c8
cmp ebx, 1
jne 0x461b40
call fcn.0042cdb0
jmp 0x4614c8
call fcn.0042c69b
jmp 0x4614c8
cmp ebx, 0xffffffff
jne 0x461b55
dec dword [0x4ac36c]
cmp ebx, 1
jne 0x461b60
inc dword [0x4ac36c]
mov eax, dword [0x4ac36c]
jmp 0x4614c8
cmp ebx, 0xffffffff
jne 0x461b79
mov eax, dword [0x4b1244]
jmp 0x4614c8
test ebx, ebx
jne 0x461b87
mov eax, dword [0x4b06e0]
jmp 0x4614c8
jbe case.0x46252e.617
cmp ebx, 0xb
jae case.0x46252e.617
dec ebx
push ebx
push dword [0x4a3fe8]
call dword [sym.imp.USER32.dll_GetSubMenu]
jmp 0x4614c8
mov esi, dword [sym.imp.USER32.dll_EnableWindow]
xor eax, eax
cmp ebx, 0xdeadbeef
setne al
mov ebx, eax
push ebx
push edi
call esi
push ebx
push dword [0x4b0400]
call esi
push ebx
push dword [0x4b0610]
call esi
jmp case.0x46252e.617
mov dword [0x4ac364], 1
jmp case.0x46252e.617
call fcn.0043d213
test ebx, ebx
mov edi, eax
je 0x461c3f
push ebx
call dword [sym.imp.KERNEL32.dll_lstrlenW]
xor esi, esi
test edi, edi
mov dword [ebp - 4], eax
jle case.0x46252e.617
push 0
lea eax, [ebp - 0xa64]
push eax
push esi
call fcn.0043ef92
push dword [ebp - 4]
lea eax, [ebp - 0xa64]
push eax
push ebx
call dword [sym.imp.NSCRT.dll__wcsnicmp]
add esp, 0x18
test eax, eax
jne 0x461c35
push eax
push esi
call fcn.0043ceda
pop ecx
pop ecx
inc esi
cmp esi, edi
jl 0x461c05
jmp case.0x46252e.617
xor esi, esi
test edi, edi
jle case.0x46252e.617
push 0
push esi
call fcn.0043ceda
inc esi
cmp esi, edi
pop ecx
pop ecx
jl 0x461c49
jmp case.0x46252e.617
xor edi, edi
push edi
push ebx
lea ecx, [ebp - 0x14]
call fcn.00402d0e
mov esi, dword [eax]
push ebx
lea ecx, [ebp - 0x148c]
call fcn.0040979b
push 1
push esi
mov ebx, eax
call fcn.0043e44d
push eax
push ebx
call fcn.0043f184
push dword [ebp - 0x14]
call dword [sym.imp.NSCRT.dll_free]
add esp, 0x14
push edi
mov dword [ebp - 0x14], edi
push edi
jmp 0x462cf8
push 0
mov esi, 0x4ace88
push esi
jmp 0x461cbd
mov esi, 0x4ad6a8
push esi
push 0
jmp 0x461ab5
mov esi, 0x4ace88
push esi
push 0
push ebx
call fcn.0043e2ab
add esp, 0xc
neg eax
sbb eax, eax
not eax
and eax, esi
jmp 0x4614c8
push dword [ebx + 4]
lea ecx, [ebp - 0x1cac]
call fcn.0040979b
push eax
push dword [ebx]
call fcn.0042c5e8
pop ecx
pop ecx
push 0x64
mov esi, eax
call dword [sym.imp.KERNEL32.dll_Sleep]
push 1
push pe_nt_image_headers32
push 0x100
push 0
lea eax, [ebp - 0x38]
push eax
call dword [sym.imp.USER32.dll_PeekMessageA]
test eax, eax
jne 0x461cf5
jmp 0x4623ad
mov eax, fcn.0040ea93
jmp 0x4614c8
call fcn.0041b787
jmp 0x4614c8
xor eax, eax
cmp byte [0x49e0b0], al
jmp 0x461d3c
xor eax, eax
cmp byte [0x49d768], al
setne al
jmp 0x4614c8
xor eax, eax
cmp byte [0x49e0b0], al
setne al
xor ecx, ecx
test ebx, ebx
setne cl
cmp eax, ecx
je case.default.0x462e6f
push 0
push 0x9c57
push 0x111
jmp 0x4616b0
xor eax, eax
cmp byte [0x49d768], al
setne al
xor ecx, ecx
test ebx, ebx
setne cl
cmp eax, ecx
je case.default.0x462e6f
push 0
push 0x9c56
jmp 0x461d65
cmp dword [ebx + 4], 2
jne 0x461da8
cmp byte [0x4a018a], 1
jne 0x461da8
xor esi, esi
mov dword [ebx + 4], esi
jmp 0x461daa
xor esi, esi
push dword [ebx]
lea ecx, [ebp - 0xa64]
call fcn.0040979b
lea eax, [ebp - 0xa64]
push eax
call dword [sym.imp.SHLWAPI.dll_PathIsURLW]
test eax, eax
je 0x461e11
lea eax, [ebp - 0xa64]
push eax
call fcn.0043d63a
cmp eax, esi
pop ecx
je 0x461e11
cmp word [eax], si
je 0x461e11
push esi
push esi
push eax
lea ecx, [ebp - 0xc]
call fcn.00402b8d
push dword [ebx + 0x10]
push dword [eax]
push dword [ebx + 0xc]
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
push dword [ebp - 0xc]
call dword [sym.imp.NSCRT.dll_free]
mov dword [ebp - 0xc], esi
pop ecx
call fcn.0043cd41
mov dword [ebx + 8], eax
jmp case.0x46252e.617
xor eax, eax
cmp dword [ebx + 4], esi
push esi
sete al
push esi
push eax
lea eax, [ebp - 0xa64]
push eax
call fcn.0043e44d
push eax
call fcn.0043ddf4
add esp, 0xc
push eax
lea ecx, [ebp - 8]
call fcn.00402b8d
push dword [ebx + 0x10]
push dword [eax]
push dword [ebx + 0xc]
call dword [sym.imp.KERNEL32.dll_lstrcpynA]
push dword [ebp - 8]
call dword [sym.imp.NSCRT.dll_free]
mov dword [ebp - 8], esi
jmp 0x461e03
push dword [ebx + 8]
push dword [ebx + 4]
push dword [ebx]
call fcn.004287bc
jmp 0x462be7
call fcn.00428113
jmp 0x4614c8
test ebx, ebx
je case.0x46252e.617
mov eax, dword [ebx]
test eax, eax
je case.0x46252e.617
push dword [ebx + 0xc]
push dword [ebx + 8]
push dword [ebx + 4]
push eax
call fcn.004283dd
jmp 0x462fc0
mov eax, 0x1f7
cmp esi, eax
jg 0x462309
je 0x4622b0
mov eax, 0x168
cmp esi, eax
jg 0x462049
je 0x46203c
add eax, 0xffffffe5
cmp esi, eax
jg 0x461f7f
je 0x461f69
sub esi, 0x129
je 0x461f56
dec esi
je 0x461f43
dec esi
je 0x461f1f
sub esi, 0x20
je 0x461f03
dec esi
jne case.default.0x462e6f
and dword [ebx + 0x18], 0
push ebx
mov ecx, 0x4aa72c
call fcn.00412937
push ebx
call fcn.00443020
jmp 0x462f24
cmp ebx, 0x10100000
jne 0x461f15
mov eax, 0x49c964
jmp 0x4614c8
mov eax, 0x483715
jmp 0x4614c8
push dword [ebx + 4]
lea ecx, [ebp - 0x2cec]
call fcn.0040979b
push dword [ebx]
lea ecx, [ebp - 0x3d2c]
mov esi, eax
call fcn.0040979b
push esi
push eax
jmp 0x462d17
test ebx, ebx
je case.0x46252e.617
push ebx
call fcn.0041dc25
jmp 0x462f24
test ebx, ebx
je case.0x46252e.617
push ebx
call fcn.0041dab7
jmp 0x462f24
push ebx
mov ecx, 0x4aa72c
call fcn.0041289e
push ebx
call fcn.00443152
jmp 0x462f24
sub esi, 0x14e
je 0x462032
dec esi
je 0x462028
dec esi
je 0x461fe1
dec esi
je 0x461fa9
dec esi
jne case.default.0x462e6f
mov eax, 0x4a04a8
jmp 0x4614c8
xor eax, eax
cmp dword [0x4ace84], eax
jne 0x461fd7
push eax
push eax
push 0x4a04a8
call fcn.00402b25
mov esi, eax
push esi
call dword [sym.imp.NSCRT.dll__strdup]
push esi
mov dword [0x4ace84], eax
call dword [sym.imp.NSCRT.dll_free]
add esp, 0x14
mov eax, dword [0x4ace84]
jmp 0x4614c8
mov eax, dword [0x4ace80]
xor esi, esi
cmp eax, esi
jne 0x461ffd
push 0x104
call dword [sym.imp.NSCRT.dll_malloc]
pop ecx
mov dword [0x4ace80], eax
push esi
push esi
push 0x103
push eax
push 0xffffffffffffffff
push 0x49f020
push esi
push esi
mov edi, eax
call dword [sym.imp.KERNEL32.dll_WideCharToMultiByte]
cmp eax, esi
je 0x46201e
mov byte [eax + edi], 0
mov eax, dword [0x4ace80]
jmp 0x4614c8
mov eax, 0x4a08b8
jmp 0x4614c8
mov eax, 0x4a09c0
jmp 0x4614c8
push ebx
push 0xffffffffffffffff
call fcn.00411f8c
jmp 0x4626f8
mov eax, 0x16e
cmp esi, eax
jg 0x462253
je 0x462248
sub esi, 0x169
je 0x4621d7
dec esi
je 0x4621c5
dec esi
je 0x462122
dec esi
je 0x462097
dec esi
jne case.default.0x462e6f
mov eax, dword [0x4ac34c]
test eax, eax
jne 0x4614c8
mov eax, dword [0x4ac344]
jmp 0x4614c8
mov ecx, dword [0x4aa724]
test ecx, ecx
mov esi, dword [sym.imp.USER32.dll_SetWindowLongA]
mov eax, ebx
push 0xfffffffffffffff8
mov dword [0x4ac34c], eax
pop edi
je 0x4620c4
test ebx, ebx
jne 0x4620ba
mov eax, dword [0x4ac344]
push eax
push edi
push ecx
call esi
mov eax, dword [0x4ac34c]
mov ecx, dword [0x49cdd4]
test ecx, ecx
je 0x4620e1
test eax, eax
jne 0x4620d7
mov eax, dword [0x4ac344]
push eax
push edi
push ecx
call esi
mov eax, dword [0x4ac34c]
mov ecx, dword [0x4a3fe0]
test ecx, ecx
je 0x4620fe
test eax, eax
jne 0x4620f4
mov eax, dword [0x4ac344]
push eax
push edi
push ecx
call esi
mov eax, dword [0x4ac34c]
mov ecx, dword [0x4a3fdc]
test ecx, ecx
je 0x462116
test eax, eax
jne 0x462111
mov eax, dword [0x4ac344]
push eax
push edi
push ecx
call esi
push ebx
call fcn.0040a5a0
pop ecx
jmp case.default.0x462e6f
lea eax, [ebp - 0xc6c]
mov dword [ebp - 0x34], eax
lea eax, [ebp - 0x3c]
xor edi, edi
push eax
mov dword [ebp - 0x3c], ebx
mov dword [ebp - 0x38], edi
mov dword [ebp - 0x30], str.__foo
mov dword [ebp - 0x2c], 1
mov dword [ebp - 0x28], 0x45488b
mov dword [ebp - 0x24], edi
call dword [sym.imp.SHELL32.dll_SHBrowseForFolderW]
mov esi, eax
cmp esi, edi
je case.default.0x462e6f
lea eax, [ebp - 0x244]
push eax
push esi
call dword [sym.imp.SHELL32.dll_SHGetPathFromIDListW]
push esi
call fcn.00414e4b
pop ecx
mov ecx, dword [0x4ac3ec]
lea eax, [ebp - 0x244]
push eax
call fcn.0045cf8a
call fcn.0043e320
xor eax, eax
mov al, byte [0x4a0188]
shr eax, 1
not eax
and eax, 1
push eax
lea eax, [ebp - 0x244]
push eax
call fcn.0043ed0c
test byte [0x4a0188], 1
pop ecx
pop ecx
je 0x4621bb
push edi
push 2
call fcn.0043ffb3
pop ecx
pop ecx
call fcn.0041d583
jmp 0x462bc5
push 0
push ebx
push 1
call fcn.00411b75
add esp, 0xc
jmp 0x462b6c
xor edi, edi
sub ebx, edi
je 0x462204
dec ebx
je 0x462200
dec ebx
je 0x4621fc
dec ebx
je 0x4621f8
dec ebx
je 0x4621f4
dec ebx
jne case.default.0x462e6f
push 5
jmp 0x462206
push 3
jmp 0x462206
push 4
jmp 0x462206
push 6
jmp 0x462206
push 2
jmp 0x462206
push 7
mov esi, dword [sym.imp.USER32.dll_GetSubMenu]
push 3
push dword [0x4b1244]
call esi
push eax
call esi
mov esi, eax
cmp esi, edi
je case.default.0x462e6f
call dword [sym.imp.USER32.dll_GetMessagePos]
push edi
push dword [ebp + 8]
mov dword [ebp - 4], eax
movsx ecx, word [ebp - 2]
push edi
push ecx
movsx eax, ax
push eax
push 2
push esi
call dword [sym.imp.USER32.dll_TrackPopupMenu]
jmp case.default.0x462e6f
push ebx
call fcn.0040a4ed
jmp 0x462f24
sub esi, 0x17c
je 0x46229c
sub esi, 0x14
je 0x462292
sub esi, 9
je 0x462287
dec esi
je 0x46227c
sub esi, 6
jne case.default.0x462e6f
mov dword [0x4abb58], ebx
jmp case.0x46252e.617
push ebx
call fcn.0040f044
jmp 0x462f24
push ebx
call fcn.0040f3a8
jmp 0x462f24
mov eax, dword [0x4b044c]
jmp 0x4614c8
cmp ebx, 0xffffffff
je 0x462870
mov dword [0x4aa720], ebx
jmp 0x462870
test ebx, ebx
jne 0x4622c8
push str.genex.bmp
push 0xfc
call fcn.0044d276
jmp 0x4626f8
cmp ebx, 1
jne 0x4622d7
call fcn.0042fb47
jmp 0x4614c8
cmp ebx, 2
jne 0x4622f3
push 0
push 0
push 0x70
call fcn.004720ed
push eax
call dword [sym.imp.NSCRT.dll_atoi]
jmp 0x462fc0
mov eax, ebx
sub eax, 3
neg eax
sbb eax, eax
not eax
and eax, dword [0x49b3f4]
jmp 0x4614c8
cmp esi, 0x25b
jg 0x46246c
cmp esi, 0x25a
jge case.0x46252e.617
lea eax, [esi - 0x1f9]
cmp eax, 0x1d
ja case.default.0x462e6f
movzx eax, byte [eax + 0x46323e]
jmp dword [eax*4 + 0x4631f6]
test ebx, ebx
je 0x46234d
push ebx
call fcn.0040ac6f
jmp 0x463087
mov eax, fcn.0040ac6f
jmp 0x4614c8
test ebx, ebx
je case.0x46252e.617
cmp dword [ebx], 0x20
jne case.0x46252e.617
push dword [ebx + 0x1c]
lea eax, [ebx + 8]
push dword [ebx + 0x18]
push eax
push dword [ebx + 4]
call fcn.00418058
jmp 0x462fc0
mov edi, 0x4a2754
push edi
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov esi, dword [0x4a2750]
jmp 0x4623a0
push ebx
push esi
call dword [ebx]
test eax, eax
pop ecx
pop ecx
jne 0x4623b4
mov esi, dword [esi + 0x1c]
test esi, esi
jne 0x462393
xor esi, esi
push edi
call dword [sym.imp.KERNEL32.dll_LeaveCriticalSection]
mov eax, esi
jmp 0x4614c8
mov esi, eax
jmp 0x4623a6
mov edi, 0x4a2754
push edi
call dword [sym.imp.KERNEL32.dll_EnterCriticalSection]
mov eax, dword [0x4a2750]
jmp 0x4623d2
cmp eax, ebx
je 0x4623d8
mov eax, dword [eax + 0x1c]
test eax, eax
jne 0x4623cb
jmp 0x4623a4
xor esi, esi
inc esi
jmp 0x4623a6
push ebx
call fcn.00409c12
jmp 0x463087
push ebx
call fcn.00409e2c
jmp 0x463087
push ebx
call fcn.00409330
jmp 0x463087
push ebx
call fcn.00409558
jmp 0x46211c
push ebx
call fcn.00409558
jmp 0x46211c
push ebx
call fcn.004095df
jmp 0x463087
push ebx
call fcn.00409656
jmp 0x46211c
push ebx
call fcn.004095af
jmp 0x46211c
push ebx
call fcn.00409674
jmp 0x46211c
push ebx
call fcn.00409674
jmp 0x46211c
push ebx
call fcn.00409690
jmp 0x463087
push ebx
call fcn.00409714
jmp 0x463087
push ebx
call fcn.0047a781
jmp 0x463087
sub esi, 0x25e
je 0x4624c8
dec esi
dec esi
je 0x4624bc
dec esi
je 0x46249c
dec esi
je 0x462490
dec esi
jne case.default.0x462e6f
mov dword [0x4ac348], ebx
jmp case.default.0x462e6f
movzx eax, byte [0x49f748]
jmp 0x4614c8
cmp ebx, 0xffffffff
jne 0x4624a7
dec dword [0x4ac374]
cmp ebx, 1
jne 0x4624b2
inc dword [0x4ac374]
mov eax, dword [0x4ac374]
jmp 0x4614c8
movzx eax, byte [0x49ee0d]
jmp 0x4614c8
cmp ebx, 0xffffffff
jne 0x4624d3
dec dword [0x4ac370]
cmp ebx, 1
jne 0x4624de
inc dword [0x4ac370]
mov eax, dword [0x4ac370]
jmp 0x4614c8
mov eax, dword [0x4ac348]
jmp 0x4614c8
mov eax, 0x3b1
cmp esi, eax
jg 0x462b10
je 0x462af5
mov eax, 0x28c
cmp esi, eax
jg 0x4627e4
je 0x46279f
lea eax, [esi - 0x265]
cmp eax, 0x26
ja case.default.0x462e6f
movzx eax, byte [eax + 0x4632ba]
jmp dword [eax*4 + 0x46325e]
movzx eax, byte [0x49bc26]
jmp 0x4614c8
movzx eax, byte [0x49f749]
jmp 0x4614c8
xor eax, eax
cmp dword [0x4ac38c], eax
jmp 0x462783
inc dword [0x4ac38c]
jmp 0x462568
dec dword [0x4ac38c]
mov eax, dword [0x4ac38c]
jmp 0x4614c8
xor eax, eax
test ebx, ebx
sete al
mov dword [0x4ac330], eax
jmp case.default.0x462e6f
mov dword [0x4ac37c], ebx
jmp case.default.0x462e6f
xor eax, eax
cmp ebx, eax
jl 0x4614c8
cmp ebx, 0x1d
jge 0x4614c8
cmp byte [0x49bca8], al
je 0x4614c8
cmp dword [0x4ac37c], eax
jne 0x4614c8
mov eax, dword [ebx*4 + 0x4a4a60]
jmp 0x4614c8
mov eax, str.out_ds.dll
jmp 0x4614c8
cmp bx, 1
jne 0x4625e8
mov ecx, dword [0x4b0448]
xor eax, eax
cmp ecx, dword [0x4b0600]
jmp 0x462783
cmp bx, 2
jne 0x4625f8
mov eax, 0x49f228
jmp 0x4614c8
cmp bx, 3
jne 0x462608
mov eax, 0x49ee10
jmp 0x4614c8
cmp bx, 4
jne 0x46266c
xor edi, edi
cmp word [0x4acc78], di
mov esi, 0x4acc78
jne 0x4623ad
cmp word [0x49f858], di
push 0x104
je 0x46265b
push 0x49f858
push esi
call dword [sym.imp.KERNEL32.dll_lstrcpynW]
push esi
call fcn.0041b1e3
cmp eax, edi
pop ecx
je 0x4623ad
push eax
push esi
call dword [sym.imp.USER32.dll_CharPrevW]
mov word [eax], di
jmp 0x4623ad
push str.English__US_
push esi
call dword [sym.imp.KERNEL32.dll_lstrcpynW]
jmp 0x4623ad
cmp bx, 5
jne 0x462686
mov ecx, dword [0x4ac3fc]
shr ebx, 0x10
push ebx
call fcn.00472135
jmp 0x4614c8
mov eax, dword [0x4b0448]
jmp 0x4614c8
cmp dword [0x49bcec], 0xe
mov ecx, dword [ebx]
mov dword [0x49bce8], ecx
je 0x4626d6
mov eax, dword [0x4a73d8]
test eax, eax
mov ebx, dword [ebx + 4]
mov dword [0x49bcec], ebx
je case.0x46252e.617
push 0x14
push 0x10
push 0x48
add ebx, 0xffffffe6
push ebx
add ecx, 0xffffff21
push ecx
push 0
push eax
call dword [sym.imp.USER32.dll_SetWindowPos]
jmp case.0x46252e.617
mov eax, dword [ebx + 4]
mov dword [0x49fa60], eax
jmp case.0x46252e.617
call fcn.0042daab
jmp 0x4614c8
push ebx
push 0x900
call fcn.00454924
pop ecx
jmp 0x463087
push 0
push 0x901
jmp 0x4626f3
mov eax, dword [0x4aa724]
jmp 0x4614c8
xor eax, eax
cmp byte [0x49bcb4], al
jmp 0x462783
xor eax, eax
cmp byte [0x49bcb4], al
setne al
xor ecx, ecx
test ebx, ebx
sete cl
cmp eax, ecx
je case.default.0x462e6f
push 0
push 0x9dcb
jmp 0x461d65
mov eax, dword [0x4ac380]
jmp 0x4614c8
xor eax, eax
test ebx, ebx
setne al
mov dword [0x4ac380], eax
jmp case.default.0x462e6f
or eax, 0xffffffff
jmp 0x4614c8
cmp ebx, 0xffffffff
jne 0x462775
movzx eax, byte [0x49f018]
jmp 0x4614c8
cmp ebx, 1
jne 0x46278b
xor eax, eax
cmp dword [0x49bcec], 0xe
sete al
jmp 0x4614c8
test ebx, ebx
jne case.0x46252e.617
movzx eax, byte [0x49ed00]
jmp 0x4614c8
mov ecx, dword [0x4ac384]
lea eax, [ecx + 1]
jmp 0x4627d3
lea esi, [edi*4 + 0x4b0420]
mov eax, dword [esi]
test eax, eax
je 0x4627d0
push eax
call fcn.0041c6da
push dword [esi]
call dword [sym.imp.NSCRT.dll_free]
and dword [esi], 0
pop ecx
pop ecx
mov ecx, dword [0x4ac384]
lea eax, [edi + 1]
push 0xa
cdq
pop esi
idiv esi
mov edi, edx
cmp edi, ecx
jne 0x4627aa
jmp case.0x46252e.617
mov eax, 0x3a5
cmp esi, eax
jg 0x4629e9
je 0x46299b
mov eax, 0x320
cmp esi, eax
jg 0x4628e1
je 0x4628b0
sub esi, 0x28d
je 0x4628a0
dec esi
je 0x462890
sub esi, 3
je 0x462886
sub esi, 9
je 0x46287c
sub esi, 0x68
jne case.default.0x462e6f
cmp ebx, 0xffff
jbe 0x46285e
and dword [ebx + 8], 0
cmp dword [0x4a4d64], 0
je case.0x46252e.617
push 0x49c978
push ebx
call fcn.00454987
mov eax, dword [0x4a4d64]
pop ecx
mov dword [ebx + 8], eax
jmp 0x462f24
test ebx, ebx
jne case.0x46252e.617
mov dword [0x4aa720], 0x14
push 1
call fcn.00443a10
jmp 0x462f24
mov eax, dword [0x49c938]
jmp 0x4614c8
mov eax, dword [0x4b06e4]
jmp 0x4614c8
call fcn.0043d54e
push eax
call fcn.0043d51b
jmp 0x463087
call fcn.0043d54e
push eax
call fcn.0043d4e8
jmp 0x463087
test ebx, ebx
jne 0x4628be
mov eax, 0x43482c
jmp 0x4614c8
cmp ebx, 1
jne 0x4628cd
mov eax, 0x43480d
jmp 0x4614c8
mov eax, ebx
dec eax
dec eax
neg eax
sbb eax, eax
not eax
and eax, 0x43485a
jmp 0x4614c8
sub esi, 0x321
je 0x462989
sub esi, 0x31
je case.0x46252e.617
dec esi
je 0x462976
sub esi, 0x31
je 0x46296c
sub esi, 0x14
jne case.default.0x462e6f
xor esi, esi
cmp ebx, esi
je case.0x46252e.617
mov eax, dword [ebx]
cmp eax, esi
je 0x462938
mov ecx, dword [ebx + 4]
cmp ecx, esi
je 0x462938
cmp eax, 6
jb 0x462926
push 6
pop eax
shl eax, 2
push eax
push ecx
push 0x49bda8
call sub.NSCRT.dll_memcpy
add esp, 0xc
mov ebx, dword [ebx + 8]
cmp ebx, esi
je 0x462946
push ebx
call fcn.00450ce1
pop ecx
push esi
call fcn.0044dbb6
cmp dword [0x49bce4], esi
pop ecx
je case.0x46252e.617
push esi
push esi
push dword [0x4b0400]
call dword [sym.imp.USER32.dll_InvalidateRect]
jmp case.0x46252e.617
mov eax, dword [0x49bcd8]
jmp 0x4614c8
test ebx, ebx
je case.0x46252e.617
push ebx
call fcn.0041dcbf
jmp 0x463087
mov eax, ebx
neg eax
sbb eax, eax
not eax
and eax, 0x434ff6
jmp 0x4614c8
xor esi, esi
cmp ebx, esi
je case.0x46252e.617
push esi
push dword [ebx]
push esi
push dword [ebx + 8]
push dword [ebx + 4]
push 0x180
push 1
push dword [0x4b1244]
call dword [sym.imp.USER32.dll_GetSubMenu]
push eax
call dword [sym.imp.USER32.dll_TrackPopupMenu]
cmp eax, esi
je case.0x46252e.617
push esi
push eax
push 0x111
push dword [0x4b0610]
call dword [sym.imp.USER32.dll_SendMessageA]
jmp case.0x46252e.617
lea eax, [esi - 0x3a6]
cmp eax, 0xa
ja case.default.0x462e6f
jmp dword [eax*4 + 0x4632e2]
push dword [ebx + 0x10]
push dword [ebx + 0xc]
push dword [ebx + 8]
push dword [ebx + 4]
push dword [ebx]
call fcn.004101d9
jmp 0x462b08
push dword [ebx + 0x10]
push dword [ebx + 0xc]
push dword [ebx + 8]
push dword [ebx + 4]
push dword [ebx]
call fcn.004103ed
jmp 0x462b08
push dword [ebx + 0x10]
push dword [ebx + 0xc]
push dword [ebx + 8]
push dword [ebx + 4]
push dword [ebx]
call fcn.0041043e
jmp 0x462b08
push dword [ebx + 0x10]
push dword [ebx + 0xc]
push dword [ebx + 8]
push dword [ebx + 4]
push dword [ebx]
call fcn.0041053c
jmp 0x462b08
push dword [ebx + 0x10]
push dword [ebx + 0xc]
push dword [ebx + 8]
push dword [ebx + 4]
push dword [ebx]
call fcn.0041063b
jmp 0x462b08
push dword [ebx + 0x10]
push dword [ebx + 0xc]
push dword [ebx + 8]
push dword [ebx + 4]
push dword [ebx]
call fcn.00410644
jmp 0x462b08
push dword [ebx + 0x10]
push dword [ebx + 0xc]
push dword [ebx + 8]
push dword [ebx + 4]
push dword [ebx]
call fcn.0041080c
jmp 0x462b08
push dword [ebx + 0x10]
push dword [ebx + 0xc]
push dword [ebx + 8]
push dword [ebx + 4]
push dword [ebx]
call fcn.0041085d
jmp 0x462b08
push dword [ebx + 0x10]
push dword [ebx + 0xc]
push dword [ebx + 8]
push dword [ebx + 4]
push dword [ebx]
call fcn.0041063b
jmp 0x462b08
push dword [ebx + 0x10]
push dword [ebx + 0xc]
push dword [ebx + 8]
push dword [ebx + 4]
push dword [ebx]
call fcn.004108ae
jmp 0x462b08
push dword [ebx + 0x10]
push dword [ebx + 0xc]
push dword [ebx + 8]
push dword [ebx + 4]
push dword [ebx]
call fcn.004109c2
jmp 0x462b08
push dword [ebx + 0x10]
push dword [ebx + 0xc]
push dword [ebx + 8]
push dword [ebx + 4]
push dword [ebx]
call fcn.0041063b
add esp, 0x14
jmp 0x4614c8
mov eax, 0xbc7
cmp esi, eax
jg 0x462e4d
je 0x462e2d
mov eax, 0x513
cmp esi, eax
jg 0x462d22
je 0x462d12
add eax, 0xffffff9e
cmp esi, eax
jg 0x462c0d
je 0x462bef
sub esi, 0x3b2
je 0x462bda
sub esi, 0x36
je 0x462bcf
sub esi, 0x64
je 0x462b97
dec esi
je 0x462b79
dec esi
jne case.default.0x462e6f
call fcn.0041d583
xor esi, esi
inc esi
call fcn.00440030
jmp 0x4623ad
xor edi, edi
call fcn.0043d213
xor ecx, ecx
test eax, eax
setg cl
mov esi, ecx
call fcn.0043e320
push edi
call fcn.0043f851
pop ecx
jmp 0x462b6f
cmp ebx, 0xffff
jbe case.default.0x462e6f
mov eax, dword [ebx + 4]
test eax, eax
je 0x462bba
push dword [ebx + 8]
push eax
push dword [ebx]
call fcn.0043e6e8
add esp, 0xc
jmp 0x462bc5
push 0
push dword [ebx]
call fcn.0043fc9b
pop ecx
pop ecx
call fcn.00440030
jmp case.default.0x462e6f
push ebx
call fcn.004402ba
jmp 0x46211c
push dword [ebx + 8]
push dword [ebx + 4]
push dword [ebx]
call fcn.0040fd56
add esp, 0xc
jmp 0x4614c8
test ebx, ebx
je 0x462c03
push 0x49e6d8
push 0x104
push ebx
call fcn.0047aaff
mov eax, 0x4a0298
jmp 0x4614c8
sub esi, 0x4d8
je 0x462d08
sub esi, 5
je 0x462ce2
sub esi, 0x2e
je 0x462c81
dec esi
je 0x462c68
dec esi
jne case.default.0x462e6f
push dword [ebx + 4]
push dword [ebx]
call fcn.0042c5e8
pop ecx
pop ecx
push 0x64
mov esi, eax
call dword [sym.imp.KERNEL32.dll_Sleep]
push 1
push pe_nt_image_headers32
push 0x100
push 0
lea eax, [ebp - 0x38]
push eax
call dword [sym.imp.USER32.dll_PeekMessageA]
test eax, eax
jne 0x462c47
jmp 0x4623ad
cmp ebx, 1
jne 0x462c77
call fcn.0042d141
jmp 0x4614c8
call fcn.0042c7b5
jmp 0x4614c8
cmp dword [ebx + 4], 2
jne 0x462c94
cmp byte [0x4a018a], 1
jne 0x462c94
and dword [ebx + 4], 0
push dword [ebx]
call dword [sym.imp.SHLWAPI.dll_PathIsURLW]
test eax, eax
je 0x462cb7
push dword [ebx]
call fcn.0043d63a
test eax, eax
pop ecx
je 0x462cb7
cmp word [eax], 0
je 0x462cb7
push dword [ebx + 0x10]
jmp 0x462cd3
push dword [ebx + 0x10]
xor eax, eax
cmp dword [ebx + 4], eax
sete al
push eax
push dword [ebx]
call fcn.0043e44d
push eax
call fcn.0043ddf4
add esp, 0xc
push eax
push dword [ebx + 0xc]
call dword [sym.imp.KERNEL32.dll_lstrcpynW]
jmp 0x461e04
push 1
push ebx
call fcn.0043e44d
push eax
push ebx
call fcn.0043f184
add esp, 0x10
push 0
push 0
push 0x401
push dword [0x4b0400]
jmp 0x4629de
mov eax, fcn.0040e8b7
jmp 0x4614c8
push dword [ebx + 4]
push dword [ebx]
call fcn.00428191
pop ecx
jmp 0x462f24
mov eax, 0xbbc
cmp esi, eax
jg 0x462da5
je 0x462d81
sub esi, 0x514
je 0x462d6f
sub esi, 0x20
je 0x462d63
sub esi, 0x29f
je case.0x462e6f.3018
dec esi
je case.0x46252e.617
sub esi, 0x3e5
jne case.default.0x462e6f
call fcn.00411512
jmp 0x4614c8
mov dword [ebx + 0x18], 1
jmp 0x461eed
push ebx
push 0xb
mov ecx, 0x4a4c98
call fcn.0041820c
jmp case.0x46252e.617
cmp dword [0x4a63ac], 0
jne case.0x46252e.617
push ebx
lea ecx, [ebp - 0x4d6c]
call fcn.0040979b
push eax
call fcn.0043f216
jmp 0x462f24
sub esi, 0xbbd
je 0x462e03
dec esi
dec esi
je 0x462df2
sub esi, 3
je case.default.0x462e6f
dec esi
je 0x462dde
dec esi
jne case.default.0x462e6f
push 0
call dword [sym.imp.USER32.dll_ReplyMessage]
push ebx
call fcn.0043070a
push ebx
call dword [sym.imp.NSCRT.dll_free]
jmp 0x462d1c
cmp ebx, 2
ja case.0x46252e.617
push ebx
call fcn.004064b1
jmp 0x462f24
xor eax, eax
test ebx, ebx
sete al
mov dword [0x4ac334], eax
jmp case.default.0x462e6f
cmp dword [0x4a63ac], 0
jne 0x462e13
push ebx
call fcn.0043f216
pop ecx
mov ecx, dword [0x4ac3d8]
push 0
push ebx
push 0xa
push 0x6d657461
call fcn.0045c43a
jmp case.0x46252e.617
sub ebx, 0
je 0x462e43
dec ebx
jne case.default.0x462e6f
mov eax, fcn.0046e4d5
jmp 0x4614c8
mov eax, fcn.0046e4cd
jmp 0x4614c8
mov eax, 0x10000
cmp esi, eax
jg case.default.0x462e6f
je 0x4630aa
lea eax, [esi - 0xbc9]
cmp eax, 0x15
ja case.default.0x462e6f
jmp dword [eax*4 + 0x46330e]
mov eax, dword [0x4ac3c8]
jmp 0x4614c8
xor eax, eax
cmp dword [0x4a0cfc], eax
jmp 0x462783
lea eax, [ebp - 4]
push eax
call fcn.004656fc
test eax, eax
pop ecx
jl case.0x46252e.617
mov eax, dword [ebp - 4]
jmp 0x4614c8
test ebx, ebx
mov eax, dword [0x49c960]
jne 0x462ebb
inc dword [0x49c960]
jmp 0x4614c8
add dword [0x49c960], ebx
jmp 0x4614c8
lea eax, [ebp - 4]
push eax
call fcn.00465887
test eax, eax
pop ecx
jl case.default.0x462e6f
mov ecx, dword [ebp - 4]
push ebx
call fcn.00464f74
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp case.default.0x462e6f
push dword [0x4ac344]
call fcn.0042f2ec
pop ecx
call fcn.004658cb
jmp case.default.0x462e6f
mov eax, ebx
sub eax, 0
je 0x462f39
dec eax
je 0x462f2a
push ebx
call dword [sym.imp.USER32.dll_IsWindow]
test eax, eax
je case.0x46252e.617
push ebx
call fcn.0041c3b3
pop ecx
jmp case.0x46252e.617
call fcn.0041c1c4
neg eax
sbb eax, eax
inc eax
jmp 0x4614c8
call fcn.0041c08b
jmp 0x462f2f
mov al, byte [ebx]
cmp al, 0x68
je 0x462f4a
cmp al, 0x48
jne 0x462f5d
cmp byte [ebx + 1], 0
jne 0x462f5d
push ebx
push 0
call fcn.00463b2f
jmp 0x462d1c
push 0
push ebx
lea ecx, [ebp - 0x1c]
call fcn.00402d0e
push dword [eax]
push 0
call fcn.00463b2f
push dword [ebp - 0x1c]
call dword [sym.imp.NSCRT.dll_free]
add esp, 0xc
jmp case.0x46252e.617
push dword [ebx + 0xc]
mov ecx, 0x4adbe0
push dword [ebx + 8]
push dword [ebx + 4]
push dword [ebx]
call fcn.00468956
test al, al
jne case.default.0x462e6f
test ebx, ebx
je case.0x46252e.617
mov eax, dword [ebx]
test eax, eax
je case.0x46252e.617
push dword [ebx + 0xc]
push dword [ebx + 8]
push dword [ebx + 4]
push eax
call fcn.00428598
add esp, 0x10
jmp 0x4614c8
push dword [ebx + 8]
push dword [ebx + 4]
push dword [ebx]
call fcn.00427f0b
jmp 0x462be7
call fcn.0046572f
jmp 0x4614c8
test ebx, ebx
je case.0x46252e.617
lea eax, [ebp - 4]
push eax
call fcn.004656fc
test eax, eax
pop ecx
jl 0x463018
push dword [ebx + 4]
mov ecx, dword [ebp - 4]
push dword [ebx]
call fcn.00465c9e
mov dword [ebx + 8], eax
mov eax, dword [ebp - 4]
mov ecx, dword [eax]
push eax
call dword [ecx + 8]
jmp case.0x46252e.617
and dword [ebx + 8], 0
jmp case.0x46252e.617
lea eax, [ebp - 4]
push eax
call fcn.004656fc
test eax, eax
pop ecx
jl case.0x46252e.617
mov ecx, dword [ebp - 4]
push ebx
call fcn.00465d27
jmp 0x46300a
mov eax, 0x49e8e8
jmp 0x4614c8
push ebx
call fcn.0043cdc4
jmp 0x463087
call fcn.0043ce1e
jmp 0x4614c8
mov eax, 0x4b0a20
jmp 0x4614c8
mov eax, 0x4b00e0
jmp 0x4614c8
and dword [ebp - 4], 0
lea eax, [ebp - 4]
push eax
push ebx
call fcn.0042c27e
jmp 0x4626f8
push ebx
call fcn.00404360
pop ecx
jmp 0x4614c8
push 0x28
call sub.NSCRT.dll_void____cdecl_operator_new_unsigned_int_
test eax, eax
pop ecx
je case.0x46252e.617
push ebx
mov ecx, eax
call fcn.00469706
jmp 0x4614c8
test ebx, ebx
je case.0x46252e.617
mov eax, dword [0x4acc70]
test eax, eax
mov dword [ebp - 4], 0x10001
mov esi, eax
mov edi, eax
je 0x4630eb
push ebx
push dword [esi]
call dword [sym.imp.KERNEL32.dll_lstrcmpiA]
test eax, eax
je 0x4630df
inc dword [ebp - 4]
mov edi, esi
mov esi, dword [esi + 4]
test esi, esi
jne 0x4630c6
test esi, esi
jne 0x462e9f
test edi, edi
jne 0x463115
push 8
call dword [sym.imp.NSCRT.dll_malloc]
test eax, eax
pop ecx
mov dword [0x4acc70], eax
je case.0x46252e.617
and dword [eax + 4], 0
push ebx
call dword [sym.imp.NSCRT.dll__strdup]
pop ecx
mov ecx, dword [0x4acc70]
jmp 0x463138
push 8
call dword [sym.imp.NSCRT.dll_malloc]
test eax, eax
pop ecx
mov dword [edi + 4], eax
je case.0x46252e.617
and dword [eax + 4], 0
push ebx
call dword [sym.imp.NSCRT.dll__strdup]
pop ecx
mov ecx, dword [edi + 4]
mov dword [ecx], eax
jmp 0x462e9f