Function at 0x407390
Capabilities:
Get graphical window text

Disassembly:
push ebp
mov eax, 0x42b7c
mov ebp, esp
push edi
push esi
push ebx
call fcn.0040fec0
mov edi, dword [ebp + 8]
lea ecx, [ebp - 0x568]
mov esi, 0xff
mov dword [ebp - 0x42b3c], edi
mov edi, dword [ebp + 0x10]
lea ebx, [edi + 0x3e8]
mov dword [ebp - 0x42b44], ebx
mov dword [esp + 0xc], esi
mov dword [esp + 8], ecx
mov dword [esp + 4], ebx
mov eax, dword [ebp + 0xc]
mov dword [esp], eax
call sub.USER32.dll_GetDlgItemTextA
mov edx, dword [ebp - 0x42b3c]
sub esp, 0x10
mov eax, dword [edx + 0x524]
cmp eax, 1
je 0x407978
cmp eax, 2
je 0x4079fe
lea eax, [ebp - 0x348]
lea esi, [ebp - 0x238]
mov dword [esp + 4], esi
mov dword [esp], eax
call sub.KERNEL32.dll_lstrcpyA
sub esp, 8
mov dword [esp + 4], edi
mov ebx, dword [ebp + 0xc]
mov edi, 0x104
mov dword [esp], ebx
mov ebx, 1
call sub.USER32.dll_GetDlgItem
sub esp, 8
mov dword [esp + 8], edi
lea edi, [ebp - 0x128]
mov dword [esp + 4], edi
mov dword [esp], eax
call sub.USER32.dll_GetWindowTextA
sub esp, 0xc
mov dword [esp], edi
call sub.KERNEL32.dll_lstrlenA
lea ecx, [eax - 1]
sub esp, 4
test ecx, ecx
jg 0x407472
jmp 0x407490
dec ecx
xor ebx, ebx
test ecx, ecx
setg dl
cmp ebx, 1
sete al
test al, dl
je 0x407490
cmp byte [ecx + edi], 0x20
jne 0x407460
mov byte [ecx + edi], 0
dec ecx
test ecx, ecx
setg dl
cmp ebx, 1
sete al
test al, dl
jne 0x407472
lea esi, [esi]
xor ebx, ebx
cmp byte [edi], 0x20
jne 0x4074a7
mov esi, esi
lea edi, [edi]
inc ebx
cmp byte [ebx + edi], 0x20
je 0x4074a0
mov dword [esp], edi
call sub.KERNEL32.dll_lstrlenA
sub esp, 4
mov esi, eax
xor ecx, ecx
jmp 0x4074c2
lea edx, [edi + ecx]
inc ecx
movzx eax, byte [edx + ebx]
mov byte [edx], al
cmp ecx, esi
jl 0x4074b8
movzx eax, byte [ebp - 0x128]
mov ecx, edi
test al, al
je 0x4074ff
mov dl, al
lea esi, [esi]
lea edi, [edi]
mov bl, dl
sub bl, 0x61
cmp bl, 0x19
jbe 0x4074f2
mov al, dl
add al, 0x20
cmp al, 0x1f
ja 0x4074f7
sub dl, 0x20
mov byte [ecx], dl
inc ecx
movzx edx, byte [ecx]
test dl, dl
jne 0x4074e0
mov dword [esp], edi
call sub.KERNEL32.dll_lstrlenA
sub esp, 4
mov ebx, eax
xor ecx, ecx
jmp 0x40752a
movzx eax, byte [ecx + ebp - 0x128]
mov dl, al
sar dl, 4
shl al, 4
add al, dl
mov byte [ecx + ebp - 0x128], al
inc ecx
cmp ecx, ebx
jl 0x407510
lea eax, [ebp - 0x238]
lea ebx, [ebp - 0x678]
mov dword [esp + 4], eax
lea esi, [ebp - 0x788]
mov dword [esp], ebx
call sub.KERNEL32.dll_lstrcpyA
sub esp, 8
mov dword [esp + 4], edi
mov dword [esp], esi
call sub.KERNEL32.dll_lstrcpyA
sub esp, 8
lea ecx, [ebp - 0x678]
mov dword [esp], ecx
call sub.KERNEL32.dll_lstrlenA
sub esp, 4
cmp eax, 3
jg 0x4075ce
lea edx, [ebp - 0x788]
mov dword [esp], edx
call sub.KERNEL32.dll_lstrlenA
sub esp, 4
test eax, eax
jne 0x4079d3
mov edi, 0x412207
mov dword [esp + 4], edi
lea esi, [ebp - 0x458]
mov dword [esp], esi
call sub.KERNEL32.dll_lstrcpyA
sub esp, 8
lea edx, [ebp - 0x568]
lea edi, [ebp - 0x458]
mov dword [esp + 4], edi
mov dword [esp], edx
call sub.KERNEL32.dll_lstrcmpA
sub esp, 8
test eax, eax
jne 0x407614
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
lea esi, [ebp - 0x788]
mov dword [esp], esi
call sub.KERNEL32.dll_lstrlenA
sub esp, 4
test eax, eax
jne 0x407b5a
mov byte [ebp - 0x458], 0x3f
lea edx, [ebp - 0x568]
lea edi, [ebp - 0x458]
mov byte [ebp - 0x457], 0
mov dword [esp + 4], edi
mov dword [esp], edx
call sub.KERNEL32.dll_lstrcmpA
sub esp, 8
test eax, eax
je 0x4075c6
lea edx, [ebp - 0x458]
mov ebx, 0x411024
mov dword [esp + 8], edx
mov esi, dword [ebp - 0x42b44]
mov dword [esp + 4], esi
mov eax, dword [ebp + 0xc]
mov dword [esp], eax
call sub.USER32.dll_SetDlgItemTextA
sub esp, 0xc
lea ecx, [ebp - 0x458]
mov dword [esp + 4], ebx
mov dword [esp], ecx
call sub.KERNEL32.dll_lstrcmpA
sub esp, 8
test eax, eax
jne 0x407a79
mov esi, dword [ebp - 0x42b3c]
xor ecx, ecx
mov edi, 1
mov dword [ebp - 0x42b4c], ecx
mov eax, dword [esi + 0x524]
cmp eax, 1
jl 0x407848
lea esi, [esi]
cmp edi, 1
je 0x407b42
mov esi, dword [ebp - 0x42b48]
lea eax, [ebp - 0x42b38]
mov dword [esp], eax
add esi, 0x104
mov dword [esp + 4], esi
call sub.KERNEL32.dll_lstrcpyA
mov edx, dword [ebp - 0x42b3c]
sub esp, 8
mov ebx, dword [ebp - 0x42b40]
mov ecx, dword [edx + 0x524]
imul ebx, ecx
lea esi, [ebx + edi + 0xfa0]
mov dword [esp + 4], esi
mov ebx, 0x104
mov eax, dword [ebp + 0xc]
mov dword [esp], eax
call sub.USER32.dll_GetDlgItem
sub esp, 8
lea edx, [ebp - 0x458]
mov dword [esp + 8], ebx
mov ebx, 1
mov dword [esp + 4], edx
mov dword [esp], eax
call sub.USER32.dll_GetWindowTextA
sub esp, 0xc
lea ecx, [ebp - 0x458]
mov dword [esp], ecx
call sub.KERNEL32.dll_lstrlenA
lea ecx, [eax - 1]
sub esp, 4
test ecx, ecx
jg 0x407727
jmp 0x407750
dec ecx
xor ebx, ebx
test ecx, ecx
setg dl
cmp ebx, 1
sete al
test al, dl
je 0x407750
cmp byte [ecx + ebp - 0x458], 0x20
jne 0x407715
xor eax, eax
mov byte [ecx + ebp - 0x458], al
dec ecx
test ecx, ecx
setg dl
cmp ebx, 1
sete al
test al, dl
jne 0x407727
lea esi, [esi]
xor ebx, ebx
cmp byte [ebp - 0x458], 0x20
jne 0x40776b
nop
lea esi, [esi]
inc ebx
cmp byte [ebx + ebp - 0x458], 0x20
je 0x407760
lea esi, [ebp - 0x458]
mov dword [esp], esi
call sub.KERNEL32.dll_lstrlenA
sub esp, 4
mov esi, eax
xor ecx, ecx
jmp 0x407791
lea edx, [ebp - 0x458]
add edx, ecx
inc ecx
movzx eax, byte [edx + ebx]
mov byte [edx], al
cmp ecx, esi
jl 0x407782
movzx eax, byte [ebp - 0x458]
lea ecx, [ebp - 0x458]
test al, al
je 0x4077d7
mov dl, al
jmp 0x4077c0
mov al, dl
add al, 0x20
cmp al, 0x1f
jbe 0x4077ca
inc ecx
movzx edx, byte [ecx]
test dl, dl
je 0x4077d7
mov bl, dl
sub bl, 0x61
cmp bl, 0x19
ja 0x4077b0
sub dl, 0x20
mov byte [ecx], dl
inc ecx
movzx edx, byte [ecx]
test dl, dl
jne 0x4077c0
lea ecx, [ebp - 0x458]
mov dword [esp], ecx
call sub.KERNEL32.dll_lstrlenA
sub esp, 4
mov ebx, eax
xor ecx, ecx
jmp 0x40780a
movzx eax, byte [ecx + ebp - 0x458]
mov dl, al
sar dl, 4
shl al, 4
add al, dl
mov byte [ecx + ebp - 0x458], al
inc ecx
cmp ecx, ebx
jl 0x4077f0
lea ecx, [ebp - 0x458]
lea ebx, [ebp - 0x42b38]
mov dword [esp + 4], ecx
mov dword [esp], ebx
call sub.KERNEL32.dll_lstrcmpA
mov esi, dword [ebp - 0x42b3c]
sub esp, 8
cmp eax, 1
adc dword [ebp - 0x42b4c], 0
mov eax, dword [esi + 0x524]
inc edi
cmp eax, edi
jge 0x407680
cmp eax, dword [ebp - 0x42b4c]
je 0x407fbc
mov esi, dword [ebp - 0x42b3c]
mov ecx, dword [esi + 0x66a8]
cmp ecx, 4
sete bl
cmp ecx, 8
sete cl
or bl, cl
je 0x407af7
mov ecx, dword [ebp - 0x42b3c]
mov eax, dword [ecx + 0x66bc]
test eax, eax
jne 0x407af7
mov edx, dword [ecx + 0x520]
xor esi, esi
mov ebx, 1
cmp edx, 1
jl 0x4078f0
lea edi, [ebp - 0x42b38]
mov dword [esp + 8], edi
lea ecx, [ebx + 0x1388]
mov edx, 0x104
mov dword [esp + 4], ecx
mov dword [esp + 0xc], edx
mov eax, dword [ebp + 0xc]
mov dword [esp], eax
call sub.USER32.dll_GetDlgItemTextA
sub esp, 0x10
mov edx, 0x411024
mov dword [esp + 4], edx
mov dword [esp], edi
call sub.KERNEL32.dll_lstrcmpA
mov ecx, dword [ebp - 0x42b3c]
sub esp, 8
cmp eax, 1
adc esi, 0
mov edx, dword [ecx + 0x520]
inc ebx
cmp edx, ebx
jge 0x4078a0
mov ecx, dword [ebp - 0x42b3c]
mov edi, edx
mov ebx, dword [ecx + 0x524]
imul edi, ebx
cmp edi, esi
jne 0x407af7
mov esi, 1
mov ebx, 1
dec edx
mov dword [ecx + 0x66bc], esi
jmp 0x407971
lea ecx, [ebx + 0x1f40]
mov esi, 1
lea edi, [ebx - 1]
mov dword [esp + 4], ecx
inc ebx
mov eax, dword [ebp + 0xc]
mov dword [esp], eax
call sub.USER32.dll_GetDlgItem
sub esp, 8
mov dword [esp + 4], esi
mov dword [esp], eax
call sub.USER32.dll_ShowWindow
sub esp, 8
mov ecx, dword [ebp - 0x42b3c]
mov dword [esp + 8], edi
mov edx, dword [ebp + 0xc]
mov dword [esp], ecx
mov dword [esp + 4], edx
call fcn.004061b0
mov eax, dword [ebp - 0x42b3c]
cmp dword [eax + 0x520], ebx
jge 0x40791c
jmp 0x407af7
mov edx, dword [ebp - 0x42b3c]
lea ebx, [edi - 0xfa1]
xor esi, esi
mov dword [ebp - 0x42b40], ebx
xor ebx, ebx
mov ecx, dword [edx + 0x6b34]
test ecx, ecx
jmp 0x4079b1
mov esi, ecx
mov ecx, dword [ecx + 0x418]
inc ebx
test ecx, ecx
setne dl
cmp ebx, dword [ebp - 0x42b40]
setbe al
test al, dl
jne 0x407998
mov dword [ebp - 0x42b48], esi
lea ecx, [ebp - 0x238]
mov dword [esp + 4], esi
mov dword [esp], ecx
call sub.KERNEL32.dll_lstrcpyA
sub esp, 8
jmp 0x4073fb
mov dword [esp], edi
lea ecx, [ebp - 0x238]
mov dword [esp + 4], ecx
call sub.KERNEL32.dll_lstrcmpA
sub esp, 8
test eax, eax
jne 0x407b16
mov esi, 0x411024
mov dword [esp + 4], esi
jmp 0x407596
lea ebx, [edi - 0xf9f]
mov esi, dword [ebp - 0x42b3c]
mov eax, ebx
shr eax, 0x1f
add ebx, eax
mov ecx, dword [esi + 0x6b34]
sar ebx, 1
xor esi, esi
dec ebx
mov dword [ebp - 0x42b40], ebx
xor ebx, ebx
test ecx, ecx
jmp 0x407a41
mov esi, ecx
mov ecx, dword [ecx + 0x418]
inc ebx
test ecx, ecx
setne dl
cmp ebx, dword [ebp - 0x42b40]
setbe al
test al, dl
jne 0x407a28
mov dword [ebp - 0x42b48], esi
mov eax, edi
mov ecx, edi
shr eax, 0x1f
lea ebx, [edi + eax]
and ebx, 0xfffffffe
sub ecx, ebx
mov eax, ecx
je 0x407b24
dec eax
jne 0x4073fb
mov dword [esp + 4], esi
lea esi, [ebp - 0x238]
mov dword [esp], esi
jmp 0x4079c6
mov edi, dword [ebp - 0x42b3c]
mov ecx, dword [edi + 0x66a8]
cmp ecx, 5
setne al
cmp ecx, 7
setne bl
test bl, al
je 0x407ad5
cmp ecx, 8
je 0x407ad5
mov ebx, dword [ebp - 0x42b40]
add ebx, 0x1f41
mov dword [esp + 4], ebx
mov edx, dword [ebp + 0xc]
mov dword [esp], edx
call sub.USER32.dll_GetDlgItem
sub esp, 8
xor ecx, ecx
mov dword [esp + 4], ecx
mov dword [esp], eax
call sub.USER32.dll_ShowWindow
mov esi, dword [ebp - 0x42b3c]
sub esp, 8
mov ecx, dword [esi + 0x66a8]
mov eax, dword [ebp - 0x42b3c]
xor edi, edi
mov dword [eax + 0x66bc], edi
cmp ecx, 4
sete bl
cmp ecx, 8
sete cl
or bl, cl
jne 0x407874
mov edx, dword [ebp + 0xc]
mov ebx, dword [ebp - 0x42b3c]
mov dword [esp + 4], edx
mov dword [esp], ebx
call fcn.004071a0
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret
fstp st(0)
mov eax, 0x41102a
mov dword [esp + 4], eax
jmp 0x407596
mov ecx, dword [ebp - 0x42b48]
lea edx, [ebp - 0x238]
mov dword [esp], edx
add ecx, 0x104
mov dword [esp + 4], ecx
jmp 0x4079c6
mov ebx, dword [ebp - 0x42b48]
lea edx, [ebp - 0x42b38]
mov dword [esp], edx
mov dword [esp + 4], ebx
jmp 0x4076a2
lea edx, [ebp - 0x678]
mov dword [esp], edx
call sub.KERNEL32.dll_lstrlenA
mov dword [ebp - 0x42b54], eax
sub esp, 4
lea eax, [ebp - 0x788]
mov dword [esp], eax
call sub.KERNEL32.dll_lstrlenA
mov dword [ebp - 0x42b50], eax
mov ebx, dword [ebp - 0x42b54]
sub esp, 4
mov edi, eax
test ebx, ebx
je 0x407ba8
mov eax, dword [ebp - 0x42b54]
test edi, edi
mov dword [ebp - 0x42b50], eax
jne 0x407ecb
mov ecx, dword [ebp - 0x42b50]
test ecx, ecx
je 0x4079f0
lea edx, [ebp - 0x678]
lea eax, [ebp - 0x898]
mov dword [esp + 4], edx
lea edi, [ebp - 0x788]
mov dword [esp], eax
lea ebx, [ebp - 0x898]
call sub.KERNEL32.dll_lstrcpyA
sub esp, 8
mov dword [esp + 4], edi
lea edi, [ebp - 0x9a8]
mov dword [esp], edi
call sub.KERNEL32.dll_lstrcpyA
sub esp, 8
mov dword [esp], ebx
call sub.KERNEL32.dll_lstrlenA
sub esp, 4
lea ebx, [eax - 1]
xor esi, esi
xor edx, edx
cmp esi, ebx
jge 0x407c3f
nop
lea esi, [esi]
movzx ecx, byte [edx + ebp - 0x898]
movzx eax, byte [ebp + edx - 0x897]
cmp cl, al
jle 0x407c37
mov byte [ebp + edx - 0x897], cl
mov esi, 1
mov byte [edx + ebp - 0x898], al
inc edx
cmp edx, ebx
jl 0x407c10
dec esi
je 0x407c00
mov dword [esp], edi
call sub.KERNEL32.dll_lstrlenA
sub esp, 4
lea ebx, [eax - 1]
xor esi, esi
xor edx, edx
cmp esi, ebx
jge 0x407c81
lea esi, [esi]
lea edi, [edi]
movzx ecx, byte [edx + edi]
movzx eax, byte [edi + edx + 1]
cmp cl, al
jle 0x407c79
mov byte [edi + edx + 1], cl
mov esi, 1
mov byte [edx + edi], al
inc edx
cmp edx, ebx
jl 0x407c60
dec esi
je 0x407c4d
lea esi, [ebp - 0x898]
mov dword [esp], esi
call sub.KERNEL32.dll_lstrlenA
mov dword [ebp - 0x42b58], eax
sub esp, 4
mov dword [esp], edi
call sub.KERNEL32.dll_lstrlenA
mov dword [ebp - 0x42b5c], eax
mov ecx, dword [ebp - 0x42b58]
sub esp, 4
test ecx, ecx
jne 0x407dc1
test eax, eax
je 0x408048
cmp dword [ebp - 0x42b50], 1
je 0x408165
cmp dword [ebp - 0x42b50], 2
je 0x408170
lea ebx, [ebp - 0x678]
lea esi, [ebp - 0x788]
mov dword [esp], ebx
lea edi, [ebp - 0x458]
call sub.KERNEL32.dll_lstrlenA
sub esp, 4
mov ebx, eax
mov dword [esp], esi
call sub.KERNEL32.dll_lstrlenA
fld dword [0x412254]
sub esp, 4
mov ecx, 0x412209
push eax
mov esi, eax
fild dword [esp]
fmul st(1), st(0)
fstp dword [ebp - 0x42b60]
mov dword [esp], ebx
fild dword [esp]
add esp, 4
fdiv st(1), st(0)
fstp dword [ebp - 0x42b64]
fstp dword [ebp - 0x42b78]
mov dword [esp + 4], ecx
mov dword [esp], edi
call sub.KERNEL32.dll_lstrcpyA
sub esp, 8
lea edx, [ebp - 0x788]
mov edi, dword [ebp - 0x42b3c]
mov dword [esp + 0xc], edx
lea eax, [ebp - 0x678]
mov dword [esp + 8], eax
mov ecx, dword [ebp + 0xc]
mov dword [esp], edi
mov dword [esp + 4], ecx
call fcn.00405ea0
cmp eax, 0xfffffffe
je 0x4080b7
cmp eax, 2
je 0x408125
cmp esi, ebx
jge 0x408105
mov ecx, dword [ebp - 0x42b50]
sub ebx, ecx
push ebx
fild dword [esp]
add esp, 4
fmul dword [0x412254]
fdiv dword [ebp - 0x42b64]
fld dword [0x412260]
fxch st(1)
fucompp
fnstsw ax
sahf
jbe 0x407b16
mov eax, str.y_a_de_lid
mov dword [esp + 4], eax
jmp 0x407596
mov ebx, dword [ebp - 0x42b5c]
mov eax, dword [ebp - 0x42b58]
test ebx, ebx
je 0x407cb7
xor edx, edx
cmp edx, eax
jg 0x407df1
lea eax, [ebp - 0x42a28]
mov dword [eax], edx
inc edx
add eax, 0x410
cmp edx, dword [ebp - 0x42b58]
jle 0x407de1
xor eax, eax
jmp 0x407dfd
mov dword [ebp + eax*4 - 0x42a28], eax
inc eax
cmp eax, dword [ebp - 0x42b5c]
jle 0x407df5
mov edx, 1
mov eax, dword [ebp - 0x42b58]
mov dword [ebp - 0x42b74], edx
cmp dword [ebp - 0x42b74], eax
jg 0x407ea5
mov ecx, 0x104
mov dword [ebp - 0x42b68], ecx
mov esi, 1
jmp 0x407e7f
movzx eax, byte [edi + esi - 1]
mov edx, dword [ebp - 0x42b74]
cmp byte [ebp + edx - 0x899], al
mov edx, dword [ebp - 0x42b68]
setne bl
add edx, esi
movzx ecx, bl
mov eax, dword [ebp + edx*4 - 0x42e38]
add ecx, dword [ebp + edx*4 - 0x42e3c]
mov ebx, dword [ebp + edx*4 - 0x42a2c]
inc eax
inc ebx
cmp eax, ebx
jl 0x407e71
mov eax, ebx
cmp eax, ecx
jl 0x407e77
mov eax, ecx
mov dword [ebp + edx*4 - 0x42a28], eax
inc esi
cmp esi, dword [ebp - 0x42b5c]
jle 0x407e34
inc dword [ebp - 0x42b74]
mov esi, dword [ebp - 0x42b58]
add dword [ebp - 0x42b68], 0x104
cmp dword [ebp - 0x42b74], esi
jle 0x407e2d
mov ecx, dword [ebp - 0x42b58]
mov eax, dword [ebp - 0x42b58]
mov ebx, dword [ebp - 0x42b5c]
shl ecx, 6
add ecx, eax
lea edi, [ebx + ecx*4]
mov eax, dword [ebp + edi*4 - 0x42a28]
jmp 0x407cb7
xor edx, edx
cmp edx, eax
jg 0x407ee7
lea eax, [ebp - 0x42a28]
mov dword [eax], edx
inc edx
add eax, 0x410
cmp edx, dword [ebp - 0x42b54]
jle 0x407ed7
xor eax, eax
jmp 0x407ef3
mov dword [ebp + eax*4 - 0x42a28], eax
inc eax
cmp eax, edi
jle 0x407eeb
mov esi, 1
mov ecx, dword [ebp - 0x42b54]
mov dword [ebp - 0x42b70], esi
cmp dword [ebp - 0x42b70], ecx
jg 0x407f96
mov ebx, 0x104
mov dword [ebp - 0x42b6c], ebx
mov esi, 1
jmp 0x407f74
movzx edx, byte [ebp + esi - 0x789]
mov ecx, dword [ebp - 0x42b70]
cmp byte [ebp + ecx - 0x679], dl
mov edx, dword [ebp - 0x42b6c]
setne al
add edx, esi
movzx ecx, al
mov ebx, dword [ebp + edx*4 - 0x42a2c]
add ecx, dword [ebp + edx*4 - 0x42e3c]
mov eax, dword [ebp + edx*4 - 0x42e38]
inc ebx
inc eax
cmp eax, ebx
jl 0x407f66
mov eax, ebx
cmp eax, ecx
jl 0x407f6c
mov eax, ecx
mov dword [ebp + edx*4 - 0x42a28], eax
inc esi
cmp esi, edi
jle 0x407f26
inc dword [ebp - 0x42b70]
mov esi, dword [ebp - 0x42b54]
add dword [ebp - 0x42b6c], 0x104
cmp dword [ebp - 0x42b70], esi
jle 0x407f1f
mov eax, dword [ebp - 0x42b54]
mov edx, dword [ebp - 0x42b54]
shl eax, 6
add eax, edx
lea ebx, [edi + eax*4]
mov edi, dword [ebp + ebx*4 - 0x42a28]
mov dword [ebp - 0x42b50], edi
jmp 0x407ba8
mov eax, dword [ebp - 0x42b3c]
xor ebx, ebx
xor esi, esi
mov edi, dword [eax + 0x6b34]
mov ecx, edi
test edi, edi
jmp 0x407feb
mov esi, ecx
mov ecx, dword [ecx + 0x418]
inc ebx
test ecx, ecx
setne dl
cmp ebx, dword [ebp - 0x42b40]
setbe al
test al, dl
jne 0x407fd2
mov ebx, 1
mov dword [esi + 0x410], ebx
mov esi, dword [ebp - 0x42b3c]
mov ecx, dword [esi + 0x66a8]
cmp ecx, 2
je 0x40817e
jg 0x408056
cmp ecx, 1
jne 0x407ae3
mov esi, dword [ebp - 0x42b40]
mov edi, dword [ebp - 0x42b3c]
mov dword [esp + 8], esi
mov ecx, dword [ebp + 0xc]
mov dword [esp], edi
mov dword [esp + 4], ecx
call fcn.004061b0
mov edi, dword [ebp - 0x42b3c]
mov ecx, dword [edi + 0x66a8]
jmp 0x407ae3
mov eax, str.Anagramme
mov dword [esp + 4], eax
jmp 0x407596
cmp ecx, 3
je 0x4081c3
cmp ecx, 7
jne 0x407ae3
xor esi, esi
xor ebx, ebx
mov ecx, edi
test edi, edi
jmp 0x40808b
mov ebx, ecx
mov ecx, dword [ecx + 0x418]
inc esi
test ecx, ecx
setne dl
cmp esi, dword [ebp - 0x42b40]
setbe al
test al, dl
jne 0x408072
lea esi, [ebx + 0x30c]
mov dword [esp + 8], esi
mov ecx, dword [ebp - 0x42b40]
add ecx, 0x1f41
mov dword [esp + 4], ecx
mov edi, dword [ebp + 0xc]
mov dword [esp], edi
call sub.USER32.dll_SetDlgItemTextA
sub esp, 0xc
jmp 0x408037
cmp ebx, 9
jle 0x4081b5
fld dword [0x412260]
fld dword [ebp - 0x42b78]
fucompp
fnstsw ax
sahf
ja 0x408208
fld dword [0x412264]
fld dword [ebp - 0x42b78]
fucompp
fnstsw ax
sahf
jbe 0x407b16
mov edi, str.Pas_loin
mov dword [esp + 4], edi
lea ebx, [ebp - 0x458]
mov dword [esp], ebx
jmp 0x40759f
mov ebx, dword [ebp - 0x42b50]
sub esi, ebx
push esi
fild dword [esp]
add esp, 4
fmul dword [0x412254]
fdiv dword [ebp - 0x42b60]
jmp 0x407da0
fld dword [0x412258]
mov eax, esi
sub eax, ebx
cdq
xor eax, edx
sub eax, edx
push eax
fild dword [esp]
add esp, 4
fucom st(1)
fnstsw ax
fstp st(1)
sahf
ja 0x407b14
fld dword [0x41225c]
fxch st(1)
fucompp
fnstsw ax
sahf
jbe 0x4081fa
mov edi, str.Pas_loin
jmp 0x407592
mov edx, str.Quasiment
mov dword [esp + 4], edx
jmp 0x4080f7
mov eax, str.Presque
mov dword [esp + 4], eax
jmp 0x407596
mov edx, dword [ebp - 0x42b40]
mov ebx, 1
add edx, 0x1f41
mov dword [esp + 4], edx
mov eax, dword [ebp + 0xc]
mov dword [esp], eax
call sub.USER32.dll_GetDlgItem
sub esp, 8
mov dword [esp + 4], ebx
mov dword [esp], eax
call sub.USER32.dll_ShowWindow
sub esp, 8
jmp 0x408037
mov esi, 0x41102a
mov dword [esp + 4], esi
jmp 0x4080f7
mov edx, dword [ebp - 0x42b40]
mov ebx, 1
add edx, 0x1f41
mov dword [esp + 4], edx
mov eax, dword [ebp + 0xc]
mov dword [esp], eax
call sub.USER32.dll_GetDlgItem
sub esp, 8
mov dword [esp + 4], ebx
mov dword [esp], eax
call sub.USER32.dll_ShowWindow
sub esp, 8
jmp 0x408018
mov ecx, str.Trop_long
mov dword [esp + 4], ecx
jmp 0x407596
mov edx, str.Trop_court
mov dword [esp + 4], edx
jmp 0x4080f7