Function at 0x45c9f0
Capabilities:
Enumerate pe sections

Disassembly:
mov eax, 0x1818
call fcn.004ebbf0
mov eax, dword [0x528af4]
xor eax, esp
mov dword [esp + 0x1814], eax
push esi
push edi
mov edi, dword [esp + 0x1824]
mov esi, ecx
push edi
mov dword [esp + 0x1c], esi
call fcn.004092d0
test al, al
jne 0x45cf09
movzx eax, word [edi]
push ebx
push ebp
push eax
call fcn.00491a30
add eax, 0xffffffc0
cmp eax, 0x1a
ja case.0x45ca76.69
jmp dword [eax*4 + 0x45dc18]
xor eax, eax
cmp word [edi + 2], 0x2b
sete al
inc eax
mov dword [esi + 0xa3ec], eax
jmp case.0x45ca76.78
movzx eax, word [edi + 2]
push eax
call fcn.00491a30
add eax, 0xffffffbd
cmp eax, 0x13
ja case.0x45ca76.69
movzx eax, byte [eax + 0x45dca8]
jmp dword [eax*4 + 0x45dc84]
mov byte [esi + 0x6154], 1
jmp case.0x45ca76.78
mov byte [esi + 0x73a8], 1
jmp case.0x45ca76.78
cmp word [edi + 4], 0x2d
lea eax, [edi + 4]
jne 0x45cab2
cmp word [edi + 6], 0
jne 0x45cab2
mov byte [esi + 0x61b8], 0
jmp case.0x45ca76.78
push 0x80
mov byte [esi + 0x61b8], 1
add esi, 0x61ba
push eax
push esi
call fcn.0048e710
jmp case.0x45ca76.78
mov byte [esi + 0x62be], 1
jmp case.0x45ca76.78
mov byte [esi + 0x6155], 1
jmp case.0x45ca76.78
add edi, 4
sub esi, edi
lea ecx, [ecx]
movzx eax, word [edi]
lea edi, [edi + 2]
mov word [esi + edi + 0x4026], ax
test ax, ax
jne 0x45caf0
jmp case.0x45ca76.78
mov byte [esi + 0x62ba], 1
jmp case.0x45ca76.78
cmp word [edi + 4], 0
jne case.0x45ca76.78
movzx eax, word [edi + 2]
push eax
call fcn.00491a30
cmp eax, 0x2d
je 0x45cb5a
cmp eax, 0x4c
je 0x45cb4b
cmp eax, 0x55
jne case.0x45ca76.78
mov dword [esi + 0x618c], 1
jmp case.0x45ca76.78
mov dword [esi + 0x618c], 2
jmp case.0x45ca76.78
mov byte [esi + 0x6156], 1
jmp case.0x45ca76.78
cmp word [edi + 4], 0
jne case.0x45ca76.78
movzx eax, word [edi + 2]
push eax
call fcn.00491a30
add eax, 0xffffffba
cmp eax, 0x11
ja case.0x45ca76.78
movzx eax, byte [eax + 0x45dcd4]
jmp dword [eax*4 + 0x45dcbc]
mov byte [esi + 0x6185], 1
jmp case.0x45ca76.78
mov byte [esi + 0x619d], 1
jmp case.0x45ca76.78
mov byte [esi + 0x619e], 1
jmp case.0x45ca76.78
mov byte [esi + 0x619e], 1
mov byte [esi + 0x61a2], 1
jmp case.0x45ca76.78
mov byte [esi + 0x619e], 1
mov byte [esi + 0x61a3], 1
jmp case.0x45ca76.78
movzx eax, word [edi + 2]
lea ebx, [edi + 2]
push eax
call fcn.00491a30
sub eax, 0x4e
je 0x45cc7b
sub eax, 2
je 0x45cc24
cmp word [ebx], 0x2b
mov ecx, esi
jne 0x45cc17
lea eax, [edi + 4]
push eax
call fcn.0045c1a0
or dword [esi + 4], eax
mov byte [esi + 8], 1
jmp case.0x45ca76.78
push ebx
call fcn.0045c1a0
or dword [esi], eax
jmp case.0x45ca76.78
movzx eax, word [edi + 4]
cmp eax, 0x33
ja case.0x45ca76.78
movzx eax, byte [eax + 0x45dcfc]
jmp dword [eax*4 + 0x45dce8]
mov dword [esi + 0x615c], 1
jmp case.0x45ca76.78
mov dword [esi + 0x615c], 2
jmp case.0x45ca76.78
mov dword [esi + 0x615c], 3
jmp case.0x45ca76.78
mov dword [esi + 0x615c], 4
jmp case.0x45ca76.78
mov byte [esi + 0x61a4], 1
jmp case.0x45ca76.78
cmp word [edi + 2], 0
jne case.0x45ca76.69
mov byte [esi + 0x6157], 1
jmp case.0x45ca76.78
movzx eax, word [edi + 2]
push eax
call fcn.00491a30
cmp eax, 0x50
je 0x45ccec
cmp eax, 0x54
jne case.0x45ca76.69
movzx eax, word [edi + 4]
push eax
call fcn.00491a30
sub eax, 0x42
je 0x45ccdd
sub eax, 1
jne case.0x45ca76.69
mov dword [esi + 0x613c], 2
jmp case.0x45ca76.78
mov dword [esi + 0x613c], 3
jmp case.0x45ca76.78
lea eax, [esi + 0x512a]
lea ecx, [edi + 4]
mov byte [eax], 1
cmp word [ecx], 0
je 0x45cd2e
push ecx
lea ecx, [esi + 0x5028]
call fcn.0048bc30
mov ecx, edi
lea edx, [ecx + 2]
nop
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x45cd10
sub ecx, edx
sar ecx, 1
lea eax, [ecx + ecx]
push eax
push edi
call fcn.0048bcb0
jmp case.0x45ca76.78
cmp byte [esi + 0x5128], 0
jne case.0x45ca76.78
push eax
add esi, 0x5028
push esi
call fcn.00402e10
jmp case.0x45ca76.78
push 3
push 0x50f708
lea ebx, [edi + 2]
push ebx
call fcn.00491b00
test eax, eax
jne 0x45cd85
add edi, 8
cmp word [edi], ax
jne 0x45cd6e
mov edi, str.rar.log
push 0x800
push edi
add esi, 0x512c
push esi
call fcn.0048e710
jmp case.0x45ca76.78
push 0x50f720
push ebx
call fcn.00491ab0
test eax, eax
jne 0x45cda0
mov byte [esi + 0x6130], 1
jmp case.0x45ca76.78
push 0x50f728
push ebx
call fcn.00491ab0
test eax, eax
jne 0x45cdbe
mov dword [esi + 0x612c], 1
jmp case.0x45ca76.78
push 3
push 0x50f730
push ebx
call fcn.00491b00
test eax, eax
jne 0x45cdf3
add edi, 8
cmp word [edi], ax
jne 0x45cddc
mov edi, 0x50f738
push 0x800
push edi
add esi, 0x63a4
push esi
call fcn.0048e710
jmp case.0x45ca76.78
push 0x50f73c
push ebx
call fcn.00491ab0
test eax, eax
jne 0x45ce11
mov dword [esi + 0x612c], 3
jmp case.0x45ca76.78
movzx eax, word [ebx]
push eax
call fcn.00491a30
cmp eax, 0x44
jne 0x45ce84
cmp word [edi + 4], 0
lea ebx, [eax - 0x42]
lea eax, [edi + 4]
je case.0x45ca76.78
movzx eax, word [eax]
push eax
call fcn.00491a30
add eax, 0xffffffbd
cmp eax, 0xe
ja case.0x45ce48.69
movzx eax, byte [eax + 0x45dd44]
jmp dword [eax*4 + 0x45dd30]
mov dword [esi + 0x612c], 2
jmp case.0x45ce48.69
mov byte [esi + 0x6149], 1
jmp case.0x45ce48.69
mov byte [esi + 0x614a], 1
jmp case.0x45ce48.69
mov byte [esi + 0x6148], 1
inc ebx
cmp word [edi + ebx*2], 0
lea eax, [edi + ebx*2]
jne 0x45ce30
jmp case.0x45ca76.78
push 0x50f744
push ebx
call fcn.00491ab0
test eax, eax
jne 0x45ce9c
mov byte [esi + 0x73a9], 1
jmp case.0x45ca76.78
push 0x50f74c
push ebx
call fcn.00491ab0
test eax, eax
jne case.0x45ca76.78
mov byte [esi + 0x614b], 1
jmp case.0x45ca76.78
movzx eax, word [edi + 2]
push eax
call fcn.00491a30
test eax, eax
je 0x45ced0
cmp eax, 0x42
jne case.0x45ca76.78
mov byte [esi + 0x619c], 1
jmp case.0x45ca76.78
mov byte [esi + 0x62e0], 1
jmp case.0x45ca76.78
push 2
push 0x50f754
lea eax, [edi + 2]
push eax
call fcn.00491b00
test eax, eax
jne case.0x45ca76.78
lea eax, [edi + 6]
mov ecx, 0x56df50
push eax
call fcn.0046c300
test al, al
jne case.0x45ca76.78
push edi
mov ecx, esi
call fcn.0045bea0
pop ebp
pop ebx
mov ecx, dword [esp + 0x181c]
pop edi
pop esi
xor ecx, esp
call fcn.004ebbd8
add esp, 0x1818
ret 4
movzx eax, word [edi + 2]
push eax
call fcn.00491a30
add eax, 0xffffffbf
cmp eax, 0x13
ja case.0x45cf3f.66
movzx eax, byte [eax + 0x45dd70]
jmp dword [eax*4 + 0x45dd54]
movzx eax, word [edi + 4]
test ax, ax
je 0x45cf5e
cmp eax, 0x35
je 0x45cf5e
xor eax, eax
mov byte [esi + 0x61a0], al
jmp case.0x45ca76.78
mov eax, 1
mov byte [esi + 0x61a0], al
jmp case.0x45ca76.78
movzx eax, word [edi + 4]
add edi, 4
cmp eax, 0x2d
jne 0x45cf95
add esi, 0x62e4
mov eax, 0x10
mov dword [esi], 3
lea esi, [esi + 0xc]
sub eax, 1
jne 0x45cf82
jmp case.0x45ca76.78
test ax, ax
je case.0x45ca76.78
mov edi, edi
mov ebp, 1
movzx eax, ax
push eax
mov dword [esp + 0x1c], 0
mov dword [esp + 0x18], 0
lea ebx, [ebp + 7]
call fcn.0048e2c0
test al, al
je 0x45cff1
push edi
call fcn.004919f0
movzx ecx, word [edi]
push ecx
mov dword [esp + 0x1c], eax
call fcn.0048e2c0
test al, al
je 0x45cff1
lea esp, [esp]
movzx eax, word [edi + 2]
add edi, 2
push eax
call fcn.0048e2c0
test al, al
jne 0x45cfe0
cmp word [edi], 0x3a
jne 0x45d037
lea eax, [edi + 2]
mov dword [esp + 0x1c], eax
movzx eax, word [eax]
push eax
call fcn.0048e2c0
test al, al
je 0x45d037
mov edi, dword [esp + 0x1c]
push edi
call fcn.004919f0
movzx ecx, word [edi]
push ecx
mov dword [esp + 0x18], eax
call fcn.0048e2c0
test al, al
je 0x45d037
movzx eax, word [edi + 2]
add edi, 2
push eax
call fcn.0048e2c0
test al, al
jne 0x45d026
movzx eax, word [edi]
add edi, 2
push eax
call fcn.00491a30
sub eax, 0x41
cmp eax, 0x13
ja case.0x45d052.66
movzx eax, byte [eax + 0x45dda4]
jmp dword [eax*4 + 0x45dd84]
mov ebx, 7
jmp case.0x45d052.66
mov ebx, ebp
jmp case.0x45d052.66
xor ebx, ebx
jmp case.0x45d052.66
mov ebx, 4
jmp case.0x45d052.66
mov ebx, 5
jmp case.0x45d052.66
mov ebx, 6
jmp case.0x45d052.66
mov ebx, 3
movzx eax, word [edi]
cmp eax, 0x2b
je 0x45d08f
cmp eax, 0x2d
jne 0x45d0a1
add edi, 2
mov ebp, 2
cmp eax, 0x2b
je 0x45d0a1
mov ebp, 3
mov edx, dword [esp + 0x18]
lea eax, [ebx + ebx*2]
lea ecx, [esi + eax*4]
lea eax, [ebx + ebx*2]
mov dword [ecx + 0x62e4], ebp
mov dword [esi + eax*4 + 0x62e8], edx
mov eax, dword [esp + 0x14]
mov dword [ecx + 0x62ec], eax
movzx eax, word [edi]
test ax, ax
jne 0x45cfa0
jmp case.0x45ca76.78
lea ebx, [edi + 4]
push ebx
call fcn.004919f0
mov dword [esi + 0xc], eax
test eax, eax
jne 0x45d0fe
movzx eax, word [ebx]
push eax
call fcn.00491a30
mov edx, 0x10000
lea ecx, [eax - 0x41]
shl edx, cl
mov dword [esi + 0xc], edx
jmp 0x45d13d
mov ecx, edi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x45d103
sub ecx, edx
sar ecx, 1
movzx eax, word [edi + ecx*2 - 2]
push eax
call fcn.00491a30
cmp eax, 0x47
je 0x45d134
cmp eax, 0x4b
mov eax, dword [esi + 0xc]
je 0x45d12f
shl eax, 0x14
jmp 0x45d13a
shl eax, 0xa
jmp 0x45d13a
mov eax, dword [esi + 0xc]
shl eax, 0x1e
mov dword [esi + 0xc], eax
cmp dword [esi + 0xc], 0x40000000
ja 0x45d151
mov ecx, esi
call fcn.0045c0d0
test al, al
jne 0x45d158
mov dword [esi + 0xc], 0x400000
mov eax, dword [esi + 0xc]
mov dword [esi + 0x83c4], eax
jmp case.0x45ca76.78
add edi, 4
cmp word [edi], 0
jne 0x45d174
mov edi, str.7z_ace_arj_bz2_cab_gz_jpeg_jpg_lha_lzh_mp3_rar_taz_tgz_xz_z_zip
push 0x400
push edi
lea eax, [esp + 0x2c]
push eax
call fcn.0048e710
cmp word [esp + 0x24], 0
lea edi, [esp + 0x24]
je case.0x45ca76.78
lea ebx, [esi + 0xc584]
lea ebx, [ebx]
push 0x3b
push edi
call fcn.004ecec5
mov esi, eax
add esp, 8
test esi, esi
je 0x45d1b6
xor eax, eax
mov word [esi], ax
cmp word [edi], 0x2e
jne 0x45d1bf
add edi, 2
push 0x50f7e0
push edi
call fcn.004f6d1b
add esp, 8
test eax, eax
lea eax, [esp + 0x824]
jne 0x45d1ee
push edi
push str.._ls
push 0x800
push eax
call fcn.004028e0
add esp, 0x10
jmp 0x45d1fa
push 0x800
push edi
push eax
call fcn.0048e710
lea eax, [esp + 0x824]
mov ecx, ebx
push eax
call fcn.0048e7f0
test esi, esi
je case.0x45ca76.78
cmp word [esi + 2], 0
lea edi, [esi + 2]
jne 0x45d1a0
jmp case.0x45ca76.78
lea eax, [edi + 4]
push eax
call fcn.004919f0
mov dword [esi + 0x83b8], eax
dec eax
cmp eax, 0x1f
ja case.0x45ca76.69
mov byte [esi + 0x83bc], 1
jmp case.0x45ca76.78
movzx eax, word [edi + 2]
sub eax, 0x30
mov dword [esi + 0x6138], eax
cmp eax, 5
jg case.0x45ca76.69
test eax, eax
jns case.0x45ca76.78
jmp case.0x45ca76.69
cmp word [edi + 2], 0
lea ebx, [edi + 2]
je case.0x45ca76.78
movzx eax, word [edi]
push eax
call fcn.00491a30
lea ebp, [esi + 0xc4cc]
cmp eax, 0x4e
je 0x45d290
lea ebp, [esi + 0xc470]
cmp word [ebx], 0x40
jne 0x45d2bf
push edi
call fcn.004789c0
test al, al
jne 0x45d2bf
push 1
push 1
push 1
push dword [esi + 0x401c]
lea eax, [edi + 4]
push 1
push 0
push ebp
push eax
call fcn.0046a5c0
jmp case.0x45ca76.78
push ebx
mov ecx, ebp
call fcn.0048e7f0
jmp case.0x45ca76.78
movzx eax, word [edi + 2]
push eax
call fcn.00491a30
cmp eax, 0x57
ja case.0x45ca76.69
movzx eax, byte [eax + 0x45dde8]
jmp dword [eax*4 + 0x45ddb8]
mov dword [esi + 0x6134], 1
jmp case.0x45ca76.78
mov dword [esi + 0x6134], 2
jmp case.0x45ca76.78
mov dword [esi + 0x6134], 4
jmp case.0x45ca76.78
mov byte [esi + 0x62bd], 1
jmp case.0x45ca76.78
mov byte [esi + 0x6192], 1
jmp case.0x45ca76.78
movzx eax, word [edi + 4]
add edi, 4
sub eax, 0x2d
je 0x45d360
sub eax, 3
je 0x45d360
sub eax, 2
je 0x45d354
mov dword [esi + 0x61a8], 1
jmp 0x45d36a
mov dword [esi + 0x61a8], 2
jmp 0x45d36a
mov dword [esi + 0x61a8], 0
push 0x3a
push edi
call fcn.004ecec5
add esp, 8
test eax, eax
je case.0x45ca76.78
add eax, 2
push eax
call fcn.00491970
mov dword [esi + 0x61b0], eax
mov dword [esi + 0x61b4], edx
jmp case.0x45ca76.78
mov byte [esi + 0x6191], 1
movzx eax, word [edi + 4]
push eax
call fcn.00491a30
cmp eax, 0x41
jne case.0x45ca76.78
mov byte [esi + 0x6193], 1
jmp case.0x45ca76.78
movzx eax, word [edi + 4]
push eax
call fcn.00491a30
cmp eax, 0x49
jne case.0x45ca76.78
mov byte [esi + 0x619f], 1
jmp case.0x45ca76.78
mov dword [esi + 0x6134], 3
jmp case.0x45ca76.78
mov byte [esi + 0x62bc], 1
jmp case.0x45ca76.78
mov byte [esi + 0x6190], 1
jmp case.0x45ca76.78
cmp word [edi + 2], 0
lea eax, [edi + 2]
jne 0x45d425
lea eax, [esi + 0x512a]
add esi, 0x5028
push eax
push esi
call fcn.00402e10
jmp case.0x45ca76.78
push eax
lea ecx, [esi + 0x5028]
call fcn.0048bc30
mov ecx, edi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x45d436
sub ecx, edx
sar ecx, 1
lea eax, [ecx + ecx]
push eax
push edi
call fcn.0048bcb0
jmp case.0x45ca76.78
movzx eax, word [edi + 2]
push eax
call fcn.00491a30
cmp eax, 0x4f
jne case.0x45ca76.69
movzx eax, word [edi + 4]
push eax
call fcn.00491a30
sub eax, 0
je 0x45d49e
sub eax, 0x2b
je 0x45d48f
sub eax, 2
jne case.0x45ca76.69
mov dword [esi + 0x2010], eax
jmp case.0x45ca76.78
mov dword [esi + 0x2010], 2
jmp case.0x45ca76.78
mov dword [esi + 0x2010], 1
jmp case.0x45ca76.78
movzx eax, word [edi + 2]
push eax
call fcn.00491a30
cmp eax, 0x56
ja case.0x45ca76.78
movzx eax, byte [eax + 0x45de5c]
jmp dword [eax*4 + 0x45de40]
mov dword [esi + 0x6160], 2
jmp case.0x45ca76.78
mov dword [esi + 0x6160], 1
jmp case.0x45ca76.78
mov dword [esi + 0x6160], 3
jmp case.0x45ca76.78
push 0xfffffffffffffffd
lea eax, [edi + 4]
mov ecx, esi
push eax
call fcn.0045c250
mov dword [esi + 0x6140], eax
jmp case.0x45ca76.78
push 0xfffffffffffffff6
lea eax, [edi + 4]
mov ecx, esi
push eax
call fcn.0045c250
mov dword [esi + 0x6144], eax
jmp case.0x45ca76.78
lea ebx, [edi + 4]
push ebx
call fcn.004919f0
mov dword [esi + 0x6194], eax
test eax, eax
js 0x45d543
cmp eax, 0xf
jle 0x45d54b
push edi
mov ecx, esi
call fcn.0045bea0
push 0x3a
push ebx
call fcn.004ecec5
add esp, 8
test eax, eax
je 0x45d583
add eax, 2
push eax
call fcn.004919f0
mov dword [esi + 0x6198], eax
cmp eax, 0x3e8
jle 0x45d578
push edi
mov ecx, esi
call fcn.0045bea0
push dword [esi + 0x6198]
call fcn.0048f0b0
push dword [esi + 0x6194]
call fcn.0048f1a0
jmp case.0x45ca76.78
push 3
push 0x50f7f4
push edi
call fcn.00491b00
test eax, eax
jne 0x45d5f0
cmp word [edi + 6], ax
lea ebx, [edi + 6]
jne 0x45d5b2
mov ebx, str.default.sfx
push ebx
call fcn.00478eb0
cmp eax, ebx
jne 0x45d5de
push ebx
call fcn.00469360
test al, al
jne 0x45d5de
push 0
push 1
push 0x800
lea eax, [esi + 0x1010]
push eax
push ebx
call fcn.004781a0
jmp 0x45d5f0
push 0x800
push ebx
lea eax, [esi + 0x1010]
push eax
call fcn.0048e710
movzx eax, word [edi + 2]
lea ebx, [edi + 2]
push eax
call fcn.0048e2c0
test al, al
je 0x45d619
or dword [esi + 0x614c], 2
push ebx
call fcn.004919f0
mov dword [esi + 0x6150], eax
jmp case.0x45ca76.78
movzx eax, word [ebx]
push eax
call fcn.00491a30
cmp eax, 0x56
ja case.0x45ca76.78
movzx eax, byte [eax + 0x45ded8]
jmp dword [eax*4 + 0x45deb4]
or dword [esi + 0x614c], 1
jmp case.0x45ca76.78
mov dword [esi + 0x614c], 0
jmp case.0x45ca76.78
or dword [esi + 0x614c], 4
jmp case.0x45ca76.78
xor eax, eax
cmp word [edi + 4], 0x2d
setne al
lea eax, [eax*8 + 8]
or dword [esi + 0x614c], eax
jmp case.0x45ca76.78
or dword [esi + 0x614c], 8
jmp case.0x45ca76.78
movzx eax, word [edi + 4]
add edi, 4
push eax
call fcn.0048e2c0
test al, al
je case.0x45ca76.78
push edi
call fcn.00491970
mov dword [esi + 0x62d0], eax
mov dword [esi + 0x62d4], edx
jmp case.0x45ca76.78
movzx eax, word [edi + 4]
add edi, 4
push eax
call fcn.0048e2c0
test al, al
je case.0x45ca76.78
push edi
call fcn.00491970
mov dword [esi + 0x62d8], eax
mov dword [esi + 0x62dc], edx
jmp case.0x45ca76.78
movzx eax, word [edi + 4]
push eax
mov byte [esp + 0x17], 0
call fcn.00491a30
cmp eax, 0x41
je 0x45d70e
cmp eax, 0x4f
je 0x45d707
cmp eax, 0x55
jne case.0x45ca76.69
lea ebx, [eax - 0x52]
jmp 0x45d713
mov ebx, 2
jmp 0x45d713
mov ebx, 1
cmp word [edi + 6], 0
lea ebp, [edi + 6]
jne 0x45d734
mov dword [esi + 0x4020], ebx
mov dword [esi + 0x401c], ebx
mov dword [esi + 0x4018], ebx
jmp case.0x45ca76.78
mov al, byte [esp + 0x13]
test al, al
jne case.0x45ca76.78
movzx eax, word [ebp]
push eax
call fcn.00491a30
add eax, 0xffffffbd
cmp eax, 0xf
ja case.0x45d759.68
movzx eax, byte [eax + 0x45df44]
jmp dword [eax*4 + 0x45df30]
mov al, byte [esp + 0x13]
mov dword [esi + 0x4018], ebx
jmp 0x45d79e
mov al, byte [esp + 0x13]
mov dword [esi + 0x401c], ebx
jmp 0x45d79e
mov al, byte [esp + 0x13]
mov dword [esi + 0x4020], ebx
jmp 0x45d79e
mov al, byte [esp + 0x13]
mov dword [esi + 0x4024], ebx
jmp 0x45d79e
push edi
mov ecx, esi
call fcn.0045bea0
mov al, 1
mov byte [esp + 0x13], al
add ebp, 2
cmp word [ebp], 0
jne 0x45d738
jmp case.0x45ca76.78
movzx eax, word [edi + 2]
push eax
call fcn.00491a30
cmp eax, 0x53
ja case.0x45ca76.69
movzx eax, byte [eax + 0x45df7c]
jmp dword [eax*4 + 0x45df54]
mov dword [esi + 0x6188], 1
jmp case.0x45ca76.78
mov dword [esi + 0x6188], 2
jmp case.0x45ca76.78
lea eax, [edi + 4]
push eax
lea ecx, [esi + 0x62c0]
call fcn.0048fc70
jmp case.0x45ca76.78
lea eax, [edi + 4]
push eax
lea ecx, [esi + 0x62c8]
call fcn.0048fc70
jmp case.0x45ca76.78
lea eax, [edi + 4]
push eax
lea ecx, [esi + 0x62c0]
call fcn.0048fe40
jmp case.0x45ca76.78
lea eax, [edi + 4]
push eax
lea ecx, [esi + 0x62c8]
call fcn.0048fe40
jmp case.0x45ca76.78
movzx ecx, word [edi + 4]
mov edx, 4
cmp ecx, 0x30
jb 0x45d856
cmp ecx, 0x34
ja 0x45d856
mov bl, 1
lea edx, [ecx - 0x30]
jmp 0x45d858
xor bl, bl
xor eax, eax
cmp ecx, 0x2d
sete al
dec eax
and eax, edx
test bl, bl
jne 0x45d8cc
cmp ecx, 0x2d
je 0x45d8cc
cmp ecx, 0x2b
je 0x45d8cc
test cx, cx
je 0x45d8cc
movzx edx, word [edi + 6]
cmp edx, 0x30
jb 0x45d887
cmp edx, 0x34
ja 0x45d887
lea eax, [edx - 0x30]
xor ebx, ebx
cmp edx, 0x2d
push ecx
sete bl
dec ebx
and ebx, eax
call fcn.00491a30
sub eax, 0x41
je 0x45d8c1
sub eax, 2
je 0x45d8b6
sub eax, 0xa
jne case.0x45ca76.78
mov dword [esi + 0x73ac], ebx
jmp case.0x45ca76.78
mov dword [esi + 0x73b0], ebx
jmp case.0x45ca76.78
mov dword [esi + 0x73b4], ebx
jmp case.0x45ca76.78
mov dword [esi + 0x73b4], eax
mov dword [esi + 0x73b0], eax
mov dword [esi + 0x73ac], eax
jmp case.0x45ca76.78
mov byte [esi + 0x62e1], 0
jmp case.0x45ca76.78
mov byte [esi + 0x62e1], 1
jmp case.0x45ca76.78
cmp word [edi + 2], 0
jne case.0x45ca76.69
mov byte [esi + 0x6158], 1
jmp case.0x45ca76.78
movzx eax, word [edi + 2]
push eax
call fcn.00491a30
add eax, 0xffffffd3
cmp eax, 0x23
ja case.0x45d92b.46
movzx eax, byte [eax + 0x45dfe8]
jmp dword [eax*4 + 0x45dfd0]
mov byte [esi + 0x61a1], 1
jmp case.0x45ca76.78
mov byte [esi + 0x61a5], 1
jmp case.0x45ca76.78
mov byte [esi + 0x62e2], 1
jmp case.0x45ca76.78
movzx eax, word [edi + 4]
push eax
call fcn.00491a30
cmp eax, 0x52
jne case.0x45ca76.78
lea eax, [edi + 6]
push eax
call fcn.004919f0
inc eax
mov dword [esi + 0x73a4], eax
jmp case.0x45ca76.78
mov dword [esi + 0x6168], 0
mov dword [esi + 0x616c], 0
jmp case.0x45ca76.78
cmp byte [esi + 0xa3f1], 0
jne 0x45d9c6
lea ecx, [esi + 0x6170]
mov dword [esi + 0x6168], 0
mov dword [esi + 0x616c], 0
call fcn.0040a6a0
mov byte [esi + 0xa3f1], 1
xor ecx, ecx
mov dword [esp + 0x1c], 1
xor edx, edx
mov dword [esp + 0x14], ecx
xor ebx, ebx
mov dword [esp + 0x18], edx
xor ebp, ebp
cmp word [edi + 2], cx
je 0x45db8b
lea esi, [edi + 2]
jmp 0x45d9f0
movzx eax, word [esi]
push eax
call fcn.0048e2c0
test al, al
je 0x45da47
mov eax, ebx
mov ecx, ebp
shld ecx, eax, 2
shl eax, 2
add ebx, eax
movzx eax, word [esi]
mov esi, dword [esp + 0x18]
adc ebp, ecx
cdq
shld ebp, ebx, 1
mov ecx, esi
add ebx, ebx
add ebx, eax
adc ebp, edx
mov edx, dword [esp + 0x14]
sub ebx, 0x30
mov eax, edx
sbb ebp, 0
shld ecx, eax, 2
shl eax, 2
add edx, eax
adc esi, ecx
shld esi, edx, 1
add edx, edx
mov dword [esp + 0x18], esi
mov dword [esp + 0x14], edx
jmp 0x45da5d
cmp word [esi], 0x2e
jne 0x45da5d
mov dword [esp + 0x14], 1
mov dword [esp + 0x18], 0
mov eax, dword [esp + 0x1c]
inc eax
cmp word [edi + eax*2], 0
mov dword [esp + 0x1c], eax
lea esi, [edi + eax*2]
jne 0x45d9f0
mov esi, dword [esp + 0x20]
mov eax, ebx
or eax, ebp
je 0x45db8b
mov ecx, edi
lea edx, [ecx + 2]
mov ax, word [ecx]
add ecx, 2
test ax, ax
jne 0x45da83
sub ecx, edx
sar ecx, 1
movzx eax, word [edi + ecx*2 - 2]
add eax, 0xffffffbe
cmp eax, 0x2b
ja case.0x45daaa.67
movzx eax, byte [eax + 0x45e02c]
jmp dword [eax*4 + 0x45e00c]
mov ecx, ebx
mov eax, ebp
add ecx, 0xfffffe98
adc eax, 0xffffffff
test eax, eax
ja case.0x45daaa.66
jb 0x45dad4
cmp ecx, 0x9d8
ja case.0x45daaa.66
cmp ebx, 0x4b0
jg 0x45db0d
je 0x45db04
cmp ebx, 0x168
je 0x45dafb
cmp ebx, 0x2d0
jne case.0x45daaa.66
mov ebx, 0xb2400
xor ebp, ebp
jmp case.0x45daaa.66
mov ebx, 0x58800
xor ebp, ebp
jmp case.0x45daaa.66
mov ebx, 0x128600
xor ebp, ebp
jmp case.0x45daaa.66
cmp ebx, 0x5a0
je 0x45db26
cmp ebx, 0xb40
jne case.0x45daaa.66
mov ebx, 0x2c7c00
xor ebp, ebp
jmp case.0x45daaa.66
mov ebx, 0x163e00
xor ebp, ebp
jmp case.0x45daaa.66
shld ebp, ebx, 0xa
shl ebx, 0xa
jmp case.0x45daaa.66
shld ebp, ebx, 0x14
shl ebx, 0x14
jmp case.0x45daaa.66
push 0
push 0xf4240
jmp 0x45db63
shld ebp, ebx, 0x1e
shl ebx, 0x1e
jmp case.0x45daaa.66
push 0
push 0x3b9aca00
jmp 0x45db63
push 0
push 0x3e8
push ebp
push ebx
call fcn.004ebe00
mov ebx, eax
mov ebp, edx
mov ecx, dword [esp + 0x14]
mov eax, ecx
mov edx, dword [esp + 0x18]
or eax, edx
je 0x45db92
push edx
push ecx
push ebp
push ebx
call fcn.004ebd50
mov ebx, eax
mov ebp, edx
jmp 0x45db92
mov ebx, SysReAllocString
mov ebp, ebx
mov eax, dword [esi + 0x6168]
or eax, dword [esi + 0x616c]
jne 0x45dbb1
mov dword [esi + 0x6168], ebx
mov dword [esi + 0x616c], ebp
jmp case.0x45ca76.78
push ebp
push ebx
lea ecx, [esi + 0x6170]
call fcn.0041fec0
jmp case.0x45ca76.78
push 0x800
lea eax, [edi + 2]
add esi, 0x10
push eax
push esi
call fcn.0048e710
push 0x800
push esi
call fcn.00477290
jmp case.0x45ca76.78
mov byte [esi + 0x6184], 1
jmp case.0x45ca76.78
add edi, 2
cmp word [edi], 0
je case.0x45ca76.78
push 0x800
push edi
add esi, 0x3016
push esi
call fcn.0048e710
jmp case.0x45ca76.78