Function at 0x677960
Capabilities:
Check os version

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
push 0xffffffffffffffff
push 0x77d5cd
mov eax, dword fs:[0]
push eax
sub esp, 0x180
mov eax, dword [0x867e6c]
xor eax, esp
mov dword [esp + 0x178], eax
push ebx
push esi
push edi
mov eax, dword [0x867e6c]
xor eax, esp
push eax
lea eax, [esp + 0x190]
mov dword fs:[0], eax
mov ebx, dword [ebp + 8]
mov edi, ecx
cmp byte [edi + 0x30], 0
jne 0x67879f
cmp ebx, 5
jne 0x677b0e
cmp byte [ebp + 0xc], 0
jne 0x6787db
mov eax, dword [0x88b140]
cmp byte [eax + 0x3a2], 0
je 0x6787db
push 0x7aa984
lea ecx, [esp + 0x3c]
call fcn.00403550
push str.Windowed_mode_is_only_available_if_your_desktop_is_running_in_either_16_bit_or_32_bit_color_mode_at_greater_than_800x600_resolution__which_it_is_not.
lea ecx, [esp + 0x58]
mov dword [esp + 0x19c], 0
call fcn.00403550
push str.No_Windowed_Mode
lea ecx, [esp + 0x20]
mov byte [esp + 0x19c], 1
call fcn.00403550
lea ecx, [esp + 0x38]
mov byte [esp + 0x198], 2
mov eax, dword [0x88b148]
push ecx
push 0x144
add eax, 0x7ec
lea esi, [esp + 0x78]
call fcn.004711e0
mov ebx, eax
lea edx, [esp + 0x54]
mov byte [esp + 0x198], 3
mov eax, dword [0x88b148]
push edx
push 0x143
add eax, 0x7ec
lea esi, [esp + 0x94]
call fcn.004711e0
mov dword [esp + 0x18], eax
lea eax, [esp + 0x1c]
push eax
mov byte [esp + 0x19c], 4
mov eax, dword [0x88b148]
push 0x142
add eax, 0x7ec
lea esi, [esp + 0xb4]
call fcn.004711e0
mov esi, dword [esp + 0x18]
push 3
push ebx
push esi
mov byte [esp + 0x1a4], 5
mov ecx, dword [0x88b140]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 0x10c]
push 1
push 0
call eax
lea ecx, [esp + 0xac]
call fcn.00406fb0
lea ecx, [esp + 0x8c]
call fcn.00406fb0
lea ecx, [esp + 0x70]
call fcn.00406fb0
lea ecx, [esp + 0x1c]
call fcn.00406fb0
lea ecx, [esp + 0x54]
call fcn.00406fb0
lea ecx, [esp + 0x38]
mov dword [esp + 0x198], 0xffffffff
call fcn.00406fb0
mov ecx, dword [edi + 0x14]
mov edx, dword [ecx]
mov eax, dword [edx + 0x144]
push 0
push 1
call eax
jmp 0x6787e7
cmp ebx, 7
jne 0x677c5d
cmp byte [ebp + 0xc], 0
je 0x6787db
mov eax, dword [0x88b140]
call fcn.0046b580
test al, al
jne 0x6787db
mov edi, dword [edi + 0x1c]
mov edx, dword [edi]
mov eax, dword [edx + 0x144]
push 0
push 0
mov ecx, edi
call eax
push 0x7aaae0
lea ecx, [esp + 0x20]
call fcn.00403550
push str.3D_acceleration_must_be_on_to_enable_animated_backgrounds.
lea ecx, [esp + 0x58]
mov dword [esp + 0x19c], 6
call fcn.00403550
push 0x7aab60
lea ecx, [esp + 0x3c]
mov byte [esp + 0x19c], bl
call fcn.00403550
lea ecx, [esp + 0x1c]
mov byte [esp + 0x198], 8
mov eax, dword [0x88b148]
push ecx
push 0x235
add eax, 0x7ec
lea esi, [esp + 0xb4]
call fcn.004711e0
mov edi, eax
lea edx, [esp + 0x54]
mov byte [esp + 0x198], 9
mov eax, dword [0x88b148]
push edx
push 0x234
add eax, 0x7ec
lea esi, [esp + 0x94]
call fcn.004711e0
mov ebx, eax
lea eax, [esp + 0x38]
push eax
mov byte [esp + 0x19c], 0xa
mov eax, dword [0x88b148]
push 0x233
add eax, 0x7ec
lea esi, [esp + 0x78]
call fcn.004711e0
mov byte [esp + 0x198], 0xb
mov ecx, dword [0x88b140]
mov edx, dword [ecx]
push 3
push edi
push ebx
push eax
mov eax, dword [edx + 0x10c]
push 1
push 0
call eax
lea ecx, [esp + 0x70]
call fcn.00406fb0
lea ecx, [esp + 0x8c]
call fcn.00406fb0
lea ecx, [esp + 0xac]
call fcn.00406fb0
lea ecx, [esp + 0x38]
call fcn.00406fb0
lea ecx, [esp + 0x54]
call fcn.00406fb0
lea ecx, [esp + 0x1c]
call fcn.00406fb0
jmp 0x6787e7
cmp ebx, 4
jne 0x67811a
cmp byte [ebp + 0xc], 0
je 0x677f7d
call fcn.0046b590
test al, al
jne 0x677d53
mov edi, dword [edi + 0x10]
mov edx, dword [edi]
mov eax, dword [edx + 0x144]
push 0
push 0
mov ecx, edi
call eax
push 0x7aab7c
lea ecx, [esp + 0x20]
call fcn.00403550
push str.3D_acceleration_cannot_be_enabled_on_this_computer._n_nYour_video_card_does_not_meet_the_minimum_requirements_for_this_game.
lea ecx, [esp + 0x58]
mov dword [esp + 0x19c], 0xc
call fcn.00403550
push 0x7aac80
lea ecx, [esp + 0x3c]
mov byte [esp + 0x19c], 0xd
call fcn.00403550
lea ecx, [esp + 0x1c]
mov byte [esp + 0x198], 0xe
mov eax, dword [0x88b148]
push ecx
push 0x147
add eax, 0x7ec
lea esi, [esp + 0xb4]
call fcn.004711e0
mov edi, eax
lea edx, [esp + 0x54]
mov byte [esp + 0x198], 0xf
mov eax, dword [0x88b148]
push edx
push 0x146
add eax, 0x7ec
lea esi, [esp + 0x94]
call fcn.004711e0
mov ebx, eax
lea eax, [esp + 0x38]
push eax
mov byte [esp + 0x19c], 0x10
mov eax, dword [0x88b148]
push 0x145
add eax, 0x7ec
lea esi, [esp + 0x78]
call fcn.004711e0
mov byte [esp + 0x198], 0x11
jmp 0x677c03
mov eax, dword [0x88b140]
call fcn.0046b5b0
test al, al
jne 0x677e68
mov ecx, dword [edi + 0x10]
mov dword [edi + 0x34], ecx
mov edx, dword [ecx]
mov eax, dword [edx + 0x144]
push 0
push 0
call eax
push 0x7aac9c
lea ecx, [esp + 0x20]
call fcn.00403550
push str.Your_video_card_may_not_properly_support_this_feature__potentially_due_to_outdated_graphics_drivers._n_nIf_you_experience_slower_performance_or_graphical_problems__please_disable_3D_acceleration_or_update_your_drivers._n_nAre_you_sure_you_want_to_enable_3D_acceleration___This_will_cause_the_game_to_restart.
lea ecx, [esp + 0x58]
mov dword [esp + 0x19c], 0x12
call fcn.00403550
push 0x7aaf04
lea ecx, [esp + 0x3c]
mov byte [esp + 0x19c], 0x13
call fcn.00403550
lea ecx, [esp + 0x54]
mov byte [esp + 0x198], 0x14
mov eax, dword [0x88b148]
push ecx
push 0x149
add eax, 0x7ec
lea esi, [esp + 0x94]
call fcn.004711e0
mov ebx, eax
lea edx, [esp + 0x38]
mov byte [esp + 0x198], 0x15
mov eax, dword [0x88b148]
push edx
push 0x148
add eax, 0x7ec
lea esi, [esp + 0x78]
call fcn.004711e0
push 1
lea esi, [esp + 0x20]
push esi
push ebx
mov byte [esp + 0x1a4], 0x16
mov ecx, dword [0x88b140]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 0x10c]
push 1
push 0x18
call eax
lea ecx, [esp + 0x70]
call fcn.00406fb0
lea ecx, [esp + 0x8c]
call fcn.00406fb0
lea ecx, [esp + 0x38]
call fcn.00406fb0
lea ecx, [esp + 0x54]
call fcn.00406fb0
mov ecx, esi
mov dword [esp + 0x198], 0xffffffff
call fcn.00406fb0
jmp 0x6787db
mov eax, dword [0x88b140]
call fcn.0046b580
test al, al
jne 0x6787db
mov ecx, dword [edi + 0x10]
mov dword [edi + 0x34], ecx
mov edx, dword [ecx]
mov eax, dword [edx + 0x144]
push 0
push 0
call eax
push 0x7aaf14
lea ecx, [esp + 0x20]
call fcn.00403550
push str.Enabling_3D_acceleration_will_cause_the_game_to_restart.
lea ecx, [esp + 0x58]
mov dword [esp + 0x19c], 0x17
call fcn.00403550
push 0x7aaf8c
lea ecx, [esp + 0x3c]
mov byte [esp + 0x19c], 0x18
call fcn.00403550
lea ecx, [esp + 0x54]
mov byte [esp + 0x198], 0x19
mov eax, dword [0x88b148]
push ecx
push 0x14b
add eax, 0x7ec
lea esi, [esp + 0x94]
call fcn.004711e0
mov ebx, eax
lea edx, [esp + 0x38]
mov byte [esp + 0x198], 0x1a
mov eax, dword [0x88b148]
push edx
push 0x14a
add eax, 0x7ec
lea esi, [esp + 0x78]
call fcn.004711e0
push 1
lea esi, [esp + 0x20]
push esi
push ebx
mov byte [esp + 0x1a4], 0x1b
mov ecx, dword [0x88b140]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 0x10c]
push 1
push 0x18
call eax
lea ecx, [esp + 0x70]
call fcn.00406fb0
lea ecx, [esp + 0x8c]
call fcn.00406fb0
lea ecx, [esp + 0x38]
call fcn.00406fb0
lea ecx, [esp + 0x54]
call fcn.00406fb0
mov ecx, esi
mov dword [esp + 0x198], 0xffffffff
call fcn.00406fb0
jmp 0x6787db
mov eax, dword [0x88b140]
call fcn.0046b580
test al, al
je 0x6787db
mov eax, dword [0x88b140]
call fcn.0046b5b0
test al, al
je 0x6787db
mov ecx, dword [edi + 0x10]
mov edx, dword [ecx]
mov eax, dword [edx + 0x144]
push 0
push 1
call eax
mov ecx, dword [edi + 0x10]
mov dword [edi + 0x34], ecx
push 0x7aaf9c
lea ecx, [esp + 0x20]
call fcn.00403550
push str.Disabling_3D_acceleration_is_not_recommended_and_may_decrease_performance._n_nDisable_it_anyway__nThis_will_cause_the_game_to_restart.
lea ecx, [esp + 0x58]
mov dword [esp + 0x19c], 0x1c
call fcn.00403550
push str.Disable_Acceleration_
lea ecx, [esp + 0x3c]
mov byte [esp + 0x19c], 0x1d
call fcn.00403550
lea edx, [esp + 0x54]
mov byte [esp + 0x198], 0x1e
mov eax, dword [0x88b148]
push edx
push 0x14d
add eax, 0x7ec
lea esi, [esp + 0x94]
call fcn.004711e0
mov ebx, eax
lea eax, [esp + 0x38]
push eax
mov byte [esp + 0x19c], 0x1f
mov eax, dword [0x88b148]
push 0x14c
add eax, 0x7ec
lea esi, [esp + 0x78]
call fcn.004711e0
push 1
lea esi, [esp + 0x20]
push esi
push ebx
mov byte [esp + 0x1a4], 0x20
mov ecx, dword [0x88b12c]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 0x10c]
push 1
push 0x18
call eax
lea ecx, [esp + 0x70]
mov esi, eax
call fcn.00406fb0
lea ecx, [esp + 0x8c]
call fcn.00406fb0
lea ecx, [esp + 0x38]
call fcn.00406fb0
lea ecx, [esp + 0x54]
call fcn.00406fb0
lea ecx, [esp + 0x1c]
mov dword [esp + 0x198], 0xffffffff
call fcn.00406fb0
push 0x384
call fcn.00401200
mov ebx, eax
mov eax, dword [esi]
mov edx, dword [eax + 0x150]
add esp, 4
push ebx
mov ecx, esi
mov dword [esp + 0x1c], eax
call edx
push eax
push ebx
push 0x4b0
call fcn.00401200
add esp, 4
mov ecx, eax
mov eax, 0x66666667
imul ecx
sar edx, 1
mov eax, edx
shr eax, 0x1f
add eax, edx
push eax
push 0x320
call fcn.00401200
add esp, 4
push 0x1c2
mov ebx, eax
call fcn.00401200
mov edx, dword [esp + 0x28]
sub ebx, eax
mov eax, dword [edx + 0xa0]
add esp, 4
push ebx
mov ecx, esi
call eax
jmp 0x6787db
cmp ebx, 8
je 0x67812d
cmp ebx, 9
je 0x67812d
cmp ebx, 0xa
jne 0x67879f
cmp byte [ebp + 0xc], 0
je 0x67879f
mov eax, dword [edi + 0x10]
cmp byte [eax + 0xc0], 0
mov byte [esp + 0x16], 0
jne 0x678278
push 0x7ab0d4
lea ecx, [esp + 0x20]
mov dword [edi + 0x34], eax
call fcn.00403550
push str.3D_acceleration_must_be_enabled_to_switch_to_a_higher_resolution.
lea ecx, [esp + 0x58]
mov dword [esp + 0x19c], 0x21
call fcn.00403550
push str.Resolution_Error
lea ecx, [esp + 0x3c]
mov byte [esp + 0x19c], 0x22
call fcn.00403550
lea ecx, [esp + 0x1c]
mov byte [esp + 0x198], 0x23
mov eax, dword [0x88b148]
push ecx
push 0x150
add eax, 0x7ec
lea esi, [esp + 0xb4]
call fcn.004711e0
mov ebx, eax
lea edx, [esp + 0x54]
mov byte [esp + 0x198], 0x24
mov eax, dword [0x88b148]
push edx
push 0x14f
add eax, 0x7ec
lea esi, [esp + 0x94]
call fcn.004711e0
mov dword [esp + 0x18], eax
lea eax, [esp + 0x38]
push eax
mov byte [esp + 0x19c], 0x25
mov eax, dword [0x88b148]
push 0x14e
add eax, 0x7ec
lea esi, [esp + 0x78]
call fcn.004711e0
mov esi, dword [esp + 0x18]
push 3
push ebx
push esi
mov byte [esp + 0x1a4], 0x26
mov ecx, dword [0x88b12c]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 0x10c]
push 1
push 0
call eax
lea ecx, [esp + 0x70]
call fcn.00406fb0
lea ecx, [esp + 0x8c]
call fcn.00406fb0
lea ecx, [esp + 0xac]
call fcn.00406fb0
lea ecx, [esp + 0x38]
call fcn.00406fb0
lea ecx, [esp + 0x54]
call fcn.00406fb0
lea ecx, [esp + 0x1c]
mov dword [esp + 0x198], 0xffffffff
call fcn.00406fb0
jmp 0x6783de
cmp ebx, 8
jne 0x678294
mov ecx, dword [0x88b12c]
cmp dword [ecx + 0x9e0], 0x258
jg 0x6782b3
jmp 0x6787ae
cmp ebx, 9
jne 0x67840b
mov edx, dword [0x88b12c]
cmp dword [edx + 0x9e0], 0x300
jle 0x6783c2
mov byte [esp + 0x16], 1
cmp ebx, 8
jne 0x6782c5
mov eax, dword [edi + 4]
mov dword [edi + 0x34], eax
jmp 0x6782cb
mov ecx, dword [edi + 8]
mov dword [edi + 0x34], ecx
push 0x7ab190
lea ecx, [esp + 0x20]
call fcn.00403550
push str.Switching_to_a_lower_resolution_mode_will_reduce_the_graphics_quality_of_the_game._n_nEnable_it_anyway__nThis_will_cause_a_game_restart.
lea ecx, [esp + 0x58]
mov dword [esp + 0x19c], 0x27
call fcn.00403550
push str.Lower_Resolution_
lea ecx, [esp + 0x3c]
mov byte [esp + 0x19c], 0x28
call fcn.00403550
lea edx, [esp + 0x54]
mov byte [esp + 0x198], 0x29
mov eax, dword [0x88b148]
push edx
push 0x152
add eax, 0x7ec
lea esi, [esp + 0x94]
call fcn.004711e0
mov dword [esp + 0x18], eax
lea eax, [esp + 0x38]
push eax
mov byte [esp + 0x19c], 0x2a
mov eax, dword [0x88b148]
push 0x151
add eax, 0x7ec
lea esi, [esp + 0x78]
call fcn.004711e0
push 1
lea esi, [esp + 0x20]
push esi
mov esi, dword [esp + 0x20]
push esi
mov byte [esp + 0x1a4], 0x2b
mov ecx, dword [0x88b12c]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 0x10c]
push 1
push 0x18
call eax
lea ecx, [esp + 0x70]
call fcn.00406fb0
lea ecx, [esp + 0x8c]
call fcn.00406fb0
lea ecx, [esp + 0x38]
call fcn.00406fb0
lea ecx, [esp + 0x54]
call fcn.00406fb0
lea ecx, [esp + 0x1c]
mov dword [esp + 0x198], 0xffffffff
call fcn.00406fb0
cmp ebx, 9
jne 0x67840b
mov eax, dword [0x88b12c]
cmp dword [eax + 0x9e0], 0x300
jl 0x678421
cmp byte [esp + 0x16], 0
je 0x67879f
mov ecx, dword [0x88b12c]
cmp dword [ecx + 0x9e0], 0x258
je 0x67871e
mov edx, dword [edi + 0x10]
cmp byte [edx + 0xc0], 0
je 0x67871e
xor al, al
jmp 0x678723
cmp ebx, 0xa
jne 0x6783d3
mov eax, dword [0x88b12c]
cmp dword [eax + 0x9e0], 0x4b0
jge 0x6783d3
cmp dword [eax + 0x834], 0
mov byte [esp + 0x17], 1
je 0x6785fe
push 0
lea ecx, [esp + 0x158]
push ecx
call fcn.00404480
mov dword [esp + 0x198], 0x2c
mov eax, str.IsHighResSupported
cmp ebx, 9
je 0x67845c
mov eax, str.IsUltraResSupported
mov edx, dword [0x88b12c]
mov ecx, dword [edx + 0x834]
mov edx, dword [ecx]
lea esi, [esp + 0x154]
push esi
push eax
mov eax, dword [edx + 4]
call eax
test al, al
je 0x6785dc
mov eax, esi
call fcn.0049ddb0
test al, al
jne 0x6785dc
push 0x7ab2f0
lea ecx, [esp + 0xe8]
mov byte [esp + 0x1a], 1
call fcn.00403550
push str.This_resolution_cannot_be_enabled_on_this_computer__your_video_card_does_not_meet_the_requirements.
lea ecx, [esp + 0x104]
mov byte [esp + 0x19c], 0x2d
call fcn.00403550
push str.Not_Supported
lea ecx, [esp + 0xcc]
mov byte [esp + 0x19c], 0x2e
call fcn.00403550
lea ecx, [esp + 0xe4]
mov byte [esp + 0x198], 0x2f
mov eax, dword [0x88b148]
push ecx
push 0x155
add eax, 0x7ec
lea esi, [esp + 0x140]
call fcn.004711e0
mov dword [esp + 0x18], eax
lea edx, [esp + 0x100]
mov byte [esp + 0x198], 0x30
mov eax, dword [0x88b148]
push edx
push 0x154
add eax, 0x7ec
lea esi, [esp + 0x124]
call fcn.004711e0
mov dword [esp + 0xa8], eax
lea eax, [esp + 0xc8]
push eax
mov byte [esp + 0x19c], 0x31
mov eax, dword [0x88b148]
push 0x153
add eax, 0x7ec
lea esi, [esp + 0xb4]
call fcn.004711e0
mov esi, dword [esp + 0x18]
push 3
push esi
mov esi, dword [esp + 0xb0]
push esi
mov byte [esp + 0x1a4], 0x32
mov ecx, dword [0x88b140]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 0x10c]
push 1
push 0
call eax
lea ecx, [esp + 0xac]
call fcn.00406fb0
lea ecx, [esp + 0x11c]
call fcn.00406fb0
lea ecx, [esp + 0x138]
call fcn.00406fb0
lea ecx, [esp + 0xc8]
call fcn.00406fb0
lea ecx, [esp + 0x100]
call fcn.00406fb0
lea ecx, [esp + 0xe4]
call fcn.00406fb0
mov byte [esp + 0x17], 0
lea esi, [esp + 0x154]
mov dword [esp + 0x198], 0xffffffff
call fcn.00404890
cmp byte [esp + 0x17], 0
je 0x6783d3
cmp ebx, 9
jne 0x67860b
mov ecx, dword [edi + 8]
mov dword [edi + 0x34], ecx
jmp 0x678611
mov edx, dword [edi + 0xc]
mov dword [edi + 0x34], edx
push 0x7ab3dc
lea ecx, [esp + 0xcc]
call fcn.00403550
push str.Switching_to_a_higher_resolution_mode_will_reduce_the_performance_of_the_game._n_nEnable_it_anyway__nThis_will_cause_a_game_restart.
lea ecx, [esp + 0x104]
mov dword [esp + 0x19c], 0x33
call fcn.00403550
push str.Higher_Resolution_
lea ecx, [esp + 0xe8]
mov byte [esp + 0x19c], 0x34
call fcn.00403550
lea eax, [esp + 0x100]
push eax
mov byte [esp + 0x19c], 0x35
mov eax, dword [0x88b148]
push 0x157
add eax, 0x7ec
lea esi, [esp + 0x124]
call fcn.004711e0
mov ebx, eax
lea ecx, [esp + 0xe4]
mov byte [esp + 0x198], 0x36
mov eax, dword [0x88b148]
push ecx
push 0x156
add eax, 0x7ec
lea esi, [esp + 0x140]
call fcn.004711e0
push 1
lea esi, [esp + 0xcc]
push esi
push ebx
mov byte [esp + 0x1a4], 0x37
mov ecx, dword [0x88b12c]
mov edx, dword [ecx]
push eax
mov eax, dword [edx + 0x10c]
push 1
push 0x18
call eax
lea ecx, [esp + 0x138]
call fcn.00406fb0
lea ecx, [esp + 0x11c]
call fcn.00406fb0
lea ecx, [esp + 0xe4]
call fcn.00406fb0
lea ecx, [esp + 0x100]
call fcn.00406fb0
mov ecx, esi
mov dword [esp + 0x198], 0xffffffff
call fcn.00406fb0
jmp 0x6783de
mov eax, 1
mov ecx, dword [edi + 4]
mov edx, dword [ecx]
push 0
push eax
mov eax, dword [edx + 0x144]
call eax
mov ecx, dword [0x88b12c]
cmp dword [ecx + 0x9e0], 0x300
jne 0x678755
mov edx, dword [edi + 0x10]
cmp byte [edx + 0xc0], 0
je 0x678755
mov al, 1
jmp 0x678757
xor al, al
mov ecx, dword [edi + 8]
mov edx, dword [ecx]
push 0
push eax
mov eax, dword [edx + 0x144]
call eax
mov ecx, dword [0x88b12c]
cmp dword [ecx + 0x9e0], 0x4b0
jne 0x678789
mov edx, dword [edi + 0x10]
cmp byte [edx + 0xc0], 0
je 0x678789
mov al, 1
jmp 0x67878b
xor al, al
mov edi, dword [edi + 0xc]
mov edx, dword [edi]
push 0
push eax
mov eax, dword [edx + 0x144]
mov ecx, edi
call eax
jmp 0x6787e7
cmp ebx, 8
je 0x6787b1
cmp ebx, 9
je 0x6787ae
cmp ebx, 0xa
jne 0x6787db
cmp ebx, 8
mov edx, dword [edi + 4]
sete cl
mov byte [edx + 0xc0], cl
mov ecx, dword [edi + 8]
cmp ebx, 9
sete al
mov byte [ecx + 0xc0], al
mov eax, dword [edi + 0xc]
cmp ebx, 0xa
sete dl
mov byte [eax + 0xc0], dl
add edi, 0xfffffddc
push edi
call fcn.00677640
mov ecx, dword [esp + 0x190]
mov dword fs:[0], ecx
pop ecx
pop edi
pop esi
pop ebx
mov ecx, dword [esp + 0x178]
xor ecx, esp
call fcn.00643db8
mov esp, ebp
pop ebp
ret 8