Function at 0x4179d0
Capabilities:
Query environment variable

Disassembly:
push ebp
mov ecx, 0x2800
mov eax, 0x14
push edi
push esi
xor esi, esi
push ebx
xor ebx, ebx
sub esp, 0x8c
mov dword [0x429990], ecx
mov dword [esp + 0x48], 0
mov dword [0x429a20], esi
mov dword [0x429850], ebx
mov dword [0x4299e0], eax
call fcn.00419b10
mov edx, 0xffffffff
mov dword [0x429a10], edx
mov edx, 0xffffffff
mov dword [0x429ac0], eax
mov dword [0x429a90], edx
mov dword [esp], 0x415a01
call sub.msvcrt.dll_getenv
cmp dword [esp + 0xa0], 1
mov dword [esp + 0x4c], eax
jle 0x417b27
mov edx, dword [esp + 0xa4]
mov edi, dword [edx + 4]
cmp byte [edi], 0x2d
je 0x417b27
mov byte [esp + 0x70], 0x2d
mov byte [esp + 0x72], 0
mov ebx, dword [edx + 4]
mov dword [esp], ebx
call sub.msvcrt.dll_strlen
mov edx, dword [esp + 0xa0]
lea ebp, [eax + edx - 1]
mov dword [esp + 0x44], ebp
shl ebp, 2
mov dword [esp], ebp
call fcn.004194b0
mov edx, dword [esp + 0xa4]
mov ebp, eax
lea ebx, [eax + 4]
mov ecx, dword [edx]
mov esi, edx
add esi, 8
mov dword [eax], ecx
mov edi, dword [edx + 4]
movzx eax, byte [edi]
test al, al
je 0x417af2
mov ecx, dword [esp + 0xa0]
lea ecx, [edx + ecx*4]
mov dword [esp + 0x40], ecx
mov byte [esp + 0x71], al
lea edx, [esp + 0x70]
mov dword [esp], edx
call fcn.00419460
mov dword [ebx], eax
add ebx, 4
movsx ecx, byte [edi]
mov dword [esp], 0x415a20
mov dword [esp + 4], ecx
call sub.msvcrt.dll_strchr
test eax, eax
je 0x417aea
cmp byte [eax + 1], 0x3a
je 0x418d60
inc edi
movzx eax, byte [edi]
test al, al
jne 0x417ab4
mov eax, dword [esp + 0xa0]
mov edi, dword [esp + 0xa4]
lea edx, [edi + eax*4]
cmp esi, edx
jae 0x417b15
mov ecx, dword [esi]
add esi, 4
mov dword [ebx], ecx
add ebx, 4
cmp esi, edx
jb 0x417b07
mov dword [esp + 0xa4], ebp
mov esi, dword [esp + 0x44]
mov dword [esp + 0xa0], esi
xor edi, edi
lea esi, [esi]
mov dword [esp + 0x10], 0
mov ebx, dword [esp + 0xa4]
mov ecx, dword [esp + 0xa0]
mov dword [esp + 0xc], 0x4281c0
mov dword [esp + 8], 0x415a20
mov dword [esp + 4], ebx
mov dword [esp], ecx
call fcn.004209e0
cmp eax, 0xffffffff
je 0x418800
cmp eax, 0x96
ja case.0x417b72.0
jmp dword [eax*4 + 0x417b7c]
mov ebp, dword [0x429420]
inc edi
mov dword [esp], ebp
call fcn.00413e40
jmp case.0x417b72.0
mov dword [esp], 0x415a60
call sub.libintl_2.dll_libintl_gettext
mov dword [esp], 0
mov dword [esp + 8], eax
mov dword [esp + 4], 0
call fcn.004196d0
mov dword [esp], 0x4154e0
call sub.libintl_2.dll_libintl_gettext
mov ebp, dword [sym.imp.msvcrt.dll__iob]
mov esi, dword [0x429750]
mov dword [esp + 4], eax
add ebp, 0x40
mov dword [esp + 8], esi
mov dword [esp], ebp
call sub.msvcrt.dll_fprintf
mov dword [esp], 2
call sub.msvcrt.dll_exit
mov eax, dword [0x429a20]
test eax, eax
je 0x417e55
cmp eax, 2
jne 0x417e65
mov ebx, 2
mov dword [0x429a20], ebx
jmp case.0x417b72.0
mov dword [esp], 0x415aa0
jmp 0x417df3
mov ebp, 1
mov dword [0x429a80], ebp
jmp case.0x417b72.0
mov dword [esp], 0x415ad4
call fcn.00413e40
mov edx, dword [0x429420]
mov dword [esp], edx
call fcn.00413e40
jmp case.0x417b72.0
mov ebx, dword [0x429420]
mov dword [0x429790], ebx
mov edx, 1
mov dword [0x429ab0], edx
jmp case.0x417b72.0
mov ebp, 1
mov dword [0x429830], ebp
jmp case.0x417b72.0
mov ebx, dword [0x429420]
mov esi, 1
mov dword [0x429960], esi
mov dword [esp], ebx
call fcn.00413550
jmp case.0x417b72.0
mov dword [esp + 0x10], 0x41547e
mov edx, dword [0x429420]
lea ecx, [esp + 0x68]
mov dword [esp + 0xc], ecx
mov dword [esp + 8], 0xa
mov dword [esp + 4], 0
mov dword [esp], edx
call fcn.0041dd70
cmp eax, 0x7fffffff
jne 0x417f3c
mov esi, dword [esp + 0x68]
xor ebx, ebx
shld ebx, esi, 0xa
shl esi, 0xa
mov dword [0x4298d0], esi
mov dword [0x4298d4], ebx
jmp case.0x417b72.77
mov dword [esp], 0x415ad7
jmp 0x417df3
mov ecx, 1
mov dword [0x4298e0], ecx
mov ebx, dword [0x429af0]
test ebx, ebx
jne 0x417fb2
mov dword [esp + 4], 0
mov esi, dword [0x429420]
mov dword [esp], esi
call fcn.0041d450
mov dword [0x429af0], eax
inc eax
jne case.0x417b72.0
mov dword [esp], 0x415aeb
call sub.libintl_2.dll_libintl_gettext
mov edx, dword [0x429420]
mov dword [esp + 0xc], edx
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.004196d0
jmp case.0x417b72.63
mov dword [esp], 0x415b04
jmp 0x417df3
mov ebp, 1
mov dword [0x4299a0], ebp
jmp case.0x417b72.0
mov ebx, 1
mov dword [0x429930], ebx
jmp case.0x417b72.0
mov esi, 1
mov dword [0x429a50], esi
jmp case.0x417b72.0
mov ebp, 1
mov dword [0x4297f0], ebp
jmp case.0x417b72.0
mov ebx, dword [0x429420]
mov dword [0x429980], ebx
jmp case.0x417b72.0
mov esi, 1
mov dword [0x4297d0], esi
jmp case.0x417b72.0
mov ebp, dword [0x429420]
mov dword [0x429b40], ebp
jmp case.0x417b72.0
mov eax, 1
mov dword [0x429910], eax
jmp case.0x417b72.0
mov dword [esp + 8], 0xa
mov esi, dword [0x429420]
mov ecx, dword [0x429ac0]
mov dword [esp + 4], esi
mov dword [esp], ecx
call fcn.00419950
test eax, eax
je case.0x417b72.0
call sub.msvcrt.dll__errno
mov dword [esp + 8], 0x415b21
mov ebx, dword [0x429420]
mov dword [esp + 0xc], ebx
mov ebp, dword [eax]
mov dword [esp], 0
mov dword [esp + 4], ebp
call fcn.004196d0
mov dword [esp], 0x4158a0
call sub.libintl_2.dll_libintl_gettext
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov dword [esp], 2
call fcn.004196d0
jmp case.0x417b72.0
mov eax, dword [0x429a40]
test eax, eax
jne 0x4180d3
mov eax, 0x415159
mov dword [0x429a40], eax
jmp case.0x417b72.0
mov dword [esp + 4], 0x415159
mov dword [esp], eax
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x4180c4
mov dword [esp], 0x415b40
jmp 0x417df3
mov dword [esp + 0x10], 0x41547e
mov edx, dword [0x429420]
lea ecx, [esp + 0x6c]
mov dword [esp + 0xc], ecx
mov dword [esp + 8], 0xa
mov dword [esp + 4], 0
mov dword [esp], edx
call fcn.0041e270
test eax, eax
jne 0x418149
mov edx, dword [esp + 0x6c]
test edx, edx
mov dword [0x4299e0], edx
jle 0x418149
mov esi, edx
shl esi, 9
mov dword [0x429990], esi
shr esi, 9
cmp edx, esi
je case.0x417b72.0
mov dword [esp], 0x415b60
jmp 0x417df3
mov eax, dword [0x429a20]
test eax, eax
je 0x418167
cmp eax, 3
jne 0x417e65
mov ebx, 3
mov dword [0x429a20], ebx
jmp case.0x417b72.0
mov eax, dword [0x429a20]
test eax, eax
je 0x418189
cmp eax, 5
jne 0x417e65
mov eax, 5
mov dword [0x429a20], eax
jmp case.0x417b72.0
mov ebx, dword [0x429950]
cmp ebx, dword [0x429a00]
je 0x4181c0
mov eax, dword [0x429420]
mov ecx, dword [0x429900]
mov dword [ecx + ebx*4], eax
inc ebx
mov dword [0x429950], ebx
jmp case.0x417b72.0
mov esi, dword [0x429900]
lea edx, [ebx + ebx]
lea ebp, [ebx*8]
mov dword [0x429a00], edx
mov dword [esp + 4], ebp
mov dword [esp], esi
call fcn.00419510
mov ebx, dword [0x429950]
mov dword [0x429900], eax
jmp 0x4181a6
mov esi, dword [0x429420]
mov dword [0x4297c0], esi
jmp case.0x417b72.71
mov edx, 1
mov dword [0x429940], edx
jmp case.0x417b72.0
mov eax, 1
mov dword [0x4298a0], eax
jmp case.0x417b72.0
mov ecx, 1
mov dword [0x429770], ecx
jmp case.0x417b72.0
mov ebp, 1
mov dword [0x429aa0], ebp
jmp case.0x417b72.0
mov ebp, 1
mov dword [0x429a30], ebp
jmp case.0x417b72.0
mov eax, dword [0x429850]
test eax, eax
je 0x41826b
dec eax
je case.0x417b72.0
mov dword [esp], 0x415b80
jmp 0x417df3
mov eax, 1
mov dword [0x429850], eax
jmp case.0x417b72.0
mov edx, 1
mov dword [0x429810], edx
jmp case.0x417b72.0
mov eax, dword [0x429a20]
test eax, eax
je 0x4182a0
dec eax
jne 0x417e65
mov ecx, 1
mov dword [0x429a20], ecx
jmp case.0x417b72.0
mov eax, 1
mov dword [0x429ae0], eax
jmp case.0x417b72.0
mov eax, dword [0x429a20]
test eax, eax
je 0x4182d1
cmp eax, 7
jne 0x417e65
mov edx, 7
mov dword [0x429a20], edx
inc dword [0x4297e0]
jmp case.0x417b72.0
mov eax, dword [0x429a20]
test eax, eax
je 0x4182f9
cmp eax, 8
jne 0x417e65
mov ecx, 8
mov dword [0x429a20], ecx
jmp case.0x417b72.0
mov edx, 1
mov dword [0x429b20], edx
jmp case.0x417b72.0
mov eax, dword [0x429a20]
test eax, eax
je 0x41832b
cmp eax, 6
jne 0x417e65
mov ebx, 6
mov dword [0x429a20], ebx
jmp case.0x417b72.0
mov eax, dword [0x429a40]
test eax, eax
jne 0x418354
mov edx, 0x4151ee
mov dword [0x429a40], edx
jmp case.0x417b72.0
mov dword [esp + 4], 0x4151ee
mov dword [esp], eax
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x418344
jmp 0x4180e7
mov eax, dword [0x429420]
mov ecx, 1
mov dword [0x429b30], ecx
test eax, eax
je case.0x417b72.0
mov dword [esp + 0x48], eax
jmp case.0x417b72.0
mov eax, dword [0x429a20]
test eax, eax
je 0x4183a3
cmp eax, 4
jne 0x417e65
mov esi, 4
mov dword [0x429a20], esi
jmp case.0x417b72.0
mov ebx, dword [0x429420]
mov ebp, dword [0x429ac0]
mov dword [esp + 4], ebx
mov dword [esp], ebp
call fcn.00419ba0
jmp case.0x417b72.0
mov edx, dword [0x429420]
mov dword [esp], edx
call sub.msvcrt.dll_strlen
cmp eax, 0x1f
ja 0x418401
mov dword [esp + 4], 0x429a90
mov ecx, dword [0x429420]
mov dword [esp], ecx
call fcn.00413d30
test eax, eax
jne case.0x417b72.0
mov dword [esp + 0x10], 0x41547e
mov esi, dword [0x429420]
lea ebp, [esp + 0x60]
mov dword [esp + 0xc], ebp
mov dword [esp + 8], 0xa
mov dword [esp + 4], 0
mov dword [esp], esi
call fcn.0041b1d0
test eax, eax
jne 0x41844b
mov ebx, dword [esp + 0x64]
xor ecx, ecx
mov esi, dword [esp + 0x60]
mov ebp, dword [esp + 0x60]
mov eax, ebx
xor eax, ecx
xor ebp, esi
or eax, ebp
je 0x41847f
mov dword [esp], 0x415ba3
call sub.libintl_2.dll_libintl_gettext
mov dword [esp + 8], eax
mov ebp, 2
mov dword [esp + 4], 0
mov dword [esp], 2
call fcn.004196d0
mov dword [0x429840], ebp
jmp case.0x417b72.0
mov edx, dword [esp + 0x60]
mov dword [0x429a90], edx
jmp case.0x417b72.0
mov dword [esp + 4], 7
mov ebp, dword [0x429420]
mov dword [esp], ebp
call fcn.00419c10
mov dword [0x429a60], eax
test eax, eax
je 0x4184c5
cmp dword [0x429a60], 1
jne case.0x417b72.0
mov dword [esp], 0x415bc1
jmp 0x418452
mov dword [esp], 0x415bd2
mov esi, 2
call sub.libintl_2.dll_libintl_gettext
mov dword [esp], 2
mov dword [esp + 8], eax
mov dword [esp + 4], 0
call fcn.004196d0
mov dword [0x429840], esi
jmp 0x4184af
mov ecx, 1
mov dword [0x4298b0], ecx
jmp case.0x417b72.0
mov byte [0x4299b0], 0
jmp case.0x417b72.0
mov ebx, dword [0x429420]
mov dword [esp], ebx
call sub.msvcrt.dll_strlen
cmp eax, 0x1f
ja 0x418543
mov dword [esp + 4], 0x429a10
mov edx, dword [0x429420]
mov dword [esp], edx
call fcn.00413c60
test eax, eax
jne case.0x417b72.0
mov dword [esp + 0x10], 0x41547e
mov ebp, dword [0x429420]
lea esi, [esp + 0x58]
mov dword [esp + 0xc], esi
mov dword [esp + 8], 0xa
mov dword [esp + 4], 0
mov dword [esp], ebp
call fcn.0041b1d0
test eax, eax
jne 0x41858d
mov ebx, dword [esp + 0x5c]
xor ecx, ecx
mov esi, dword [esp + 0x58]
mov ebp, dword [esp + 0x58]
mov eax, ebx
xor eax, ecx
xor ebp, esi
or eax, ebp
je 0x418599
mov dword [esp], 0x415bef
jmp 0x418452
mov edx, dword [esp + 0x58]
mov dword [0x429a10], edx
jmp case.0x417b72.0
mov eax, dword [0x429850]
test eax, eax
je 0x4185b9
cmp eax, 4
jmp 0x418259
mov esi, 4
mov dword [0x429850], esi
jmp case.0x417b72.0
mov ecx, 1
mov dword [0x429810], ecx
jmp case.0x417b72.115
mov dword [esp + 0x10], 0x41547e
mov ebx, dword [0x429420]
lea edx, [esp + 0x50]
mov dword [esp + 0xc], edx
mov dword [esp + 8], 0xa
mov dword [esp + 4], 0
mov dword [esp], ebx
call fcn.0041b1d0
cmp eax, 0x7fffffff
jne 0x418663
mov ebx, dword [esp + 0x54]
xor ecx, ecx
mov esi, dword [esp + 0x50]
mov ebp, dword [esp + 0x50]
mov eax, ebx
xor eax, ecx
xor ebp, esi
or eax, ebp
jne 0x418663
mov eax, dword [esp + 0x50]
test eax, 0x1ff
mov dword [0x429990], eax
jne 0x41864a
shr eax, 9
mov dword [0x4299e0], eax
jmp case.0x417b72.0
mov dword [esp], 0x415c20
call sub.libintl_2.dll_libintl_gettext
mov dword [esp + 0xc], 0x200
jmp 0x417f95
mov dword [esp], 0x415c46
jmp 0x417df3
mov edx, dword [0x429420]
mov dword [0x4298c0], edx
jmp case.0x417b72.0
mov ebp, dword [0x429420]
mov eax, 1
mov dword [0x429b30], eax
mov dword [esp + 0x4c], ebp
jmp case.0x417b72.0
mov eax, dword [0x429a40]
mov ebx, dword [0x429420]
test eax, eax
jne 0x4186b4
mov dword [0x429a40], ebx
jmp case.0x417b72.0
mov dword [esp + 4], ebx
mov dword [esp], eax
call sub.msvcrt.dll_strcmp
test eax, eax
je 0x4186a9
jmp 0x4180e7
mov esi, dword [0x429420]
mov dword [0x4299d0], esi
jmp case.0x417b72.0
mov dword [esp], 0x415c60
call sub.libintl_2.dll_libintl_gettext
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.004196d0
jmp case.0x417b72.80
mov dword [esp], 0x415ca0
call sub.libintl_2.dll_libintl_gettext
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov dword [esp], 0
jmp 0x4180b1
mov dword [esp], 0x415ce0
call sub.libintl_2.dll_libintl_gettext
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.004196d0
jmp case.0x417b72.98
mov dword [esp], 0x415d20
call sub.libintl_2.dll_libintl_gettext
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.004196d0
jmp case.0x417b72.82
mov dword [esp], 0x415d60
call sub.libintl_2.dll_libintl_gettext
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.004196d0
jmp case.0x417b72.66
mov dword [esp], 0x415da0
call sub.libintl_2.dll_libintl_gettext
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.004196d0
jmp case.0x417b72.109
mov dword [esp], 0x415de0
call sub.libintl_2.dll_libintl_gettext
mov dword [esp + 8], eax
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.004196d0
jmp case.0x417b72.128
mov edx, dword [0x4281a8]
test edx, edx
jne 0x418cf0
mov eax, dword [0x4281a4]
test eax, eax
jne 0x418ad4
mov eax, dword [0x429850]
test eax, eax
jne 0x418834
mov esi, 2
mov eax, 2
mov dword [0x429850], esi
cmp eax, 4
je 0x418ab0
mov eax, dword [0x429b40]
test eax, eax
jne 0x418864
mov ecx, dword [0x429830]
test ecx, ecx
jne 0x418864
mov ebp, dword [0x429ab0]
test ebp, ebp
jne 0x418864
mov ebx, dword [0x4297f0]
test ebx, ebx
je 0x418877
mov eax, dword [0x429850]
cmp eax, 2
je 0x418877
cmp eax, 4
jne 0x418a9e
mov ebx, dword [0x429950]
test ebx, ebx
je 0x418a60
cmp ebx, 1
jle 0x418898
mov edx, dword [0x429ab0]
test edx, edx
je 0x418a4d
mov ecx, dword [0x429970]
test ecx, ecx
je 0x4188ad
mov esi, 1
mov dword [0x4297d0], esi
mov eax, dword [0x429a20]
cmp eax, 8
ja case.0x4188b7.0
jmp dword [eax*4 + 0x4188c0]
test edi, edi
jne case.0x4188b7.0
mov edi, dword [0x429980]
test edi, edi
je 0x418946
mov ebp, dword [0x429900]
mov dword [0x429820], ebp
mov ebx, dword [esp + 0x4c]
test ebx, ebx
je 0x418917
mov edi, dword [esp + 0x4c]
mov dword [esp], edi
call fcn.00419460
mov dword [0x428760], eax
mov eax, dword [0x429b30]
test eax, eax
jne 0x41892b
add esp, 0x8c
pop ebx
pop esi
pop edi
pop ebp
ret
mov dword [esp], 0x415e0a
mov ecx, dword [esp + 0x48]
mov dword [esp + 4], ecx
call fcn.0041b0d0
mov dword [0x4297b0], eax
jmp 0x418920
mov dword [esp], 0x415e20
jmp 0x417df3
mov ebp, dword [0x429900]
lea eax, [ebp + ebx*4]
cmp ebp, eax
mov dword [esp + 0x2c], ebp
mov dword [0x429820], ebp
jae 0x4188f8
mov ebx, eax
cld
mov ecx, dword [esp + 0x2c]
mov edx, 2
mov edi, 0x415e4d
mov esi, dword [ecx]
mov ecx, edx
repe cmpsb byte [esi], byte es:[edi]
jne 0x418997
mov esi, dword [0x4281a0]
test esi, esi
jne 0x4189af
mov eax, 0x415e4f
mov dword [0x4281a0], eax
add dword [esp + 0x2c], 4
mov edi, dword [esp + 0x2c]
cmp edi, ebx
mov dword [0x429820], edi
jb 0x41896c
jmp 0x4188f8
mov dword [esp], 0x415780
call sub.libintl_2.dll_libintl_gettext
mov ebx, dword [0x4281a0]
mov dword [esp + 0x10], 0x415e4f
mov dword [esp + 8], eax
mov dword [esp + 0xc], ebx
mov dword [esp + 4], 0
mov dword [esp], 0
call fcn.004196d0
jmp case.0x417b72.63
mov ebp, dword [0x429900]
lea eax, [ebp + ebx*4]
cmp ebp, eax
mov dword [esp + 0x2c], ebp
mov dword [0x429820], ebp
jae 0x4188f8
mov dword [esp + 0x3c], eax
cld
mov ebx, dword [0x429820]
mov edi, 0x415e4d
mov ecx, 2
mov esi, dword [ebx]
repe cmpsb byte [esi], byte es:[edi]
je 0x418a41
mov edx, dword [esp + 0x3c]
add ebx, 4
mov dword [esp + 0x2c], ebx
cmp ebx, edx
mov dword [0x429820], ebx
jb 0x418a10
jmp 0x4188f8
mov dword [esp], 0x415e60
jmp 0x417df3
mov dword [esp], 0x415ea0
jmp 0x417df3
mov dword [esp], 0x415ecc
mov ebp, dword [0x429900]
mov eax, 1
mov dword [0x429950], eax
call sub.msvcrt.dll_getenv
mov dword [ebp], eax
mov ebp, dword [0x429900]
mov esi, dword [ebp]
test esi, esi
jne 0x418a93
mov dword [ebp], 0x415e4d
mov ebx, dword [0x429950]
jmp 0x418885
mov dword [esp], 0x415ee0
jmp 0x417df3
mov dword [esp], 0x415f13
call sub.msvcrt.dll_getenv
test eax, eax
je 0x41883d
mov edx, 3
mov dword [0x429850], edx
jmp 0x41883d
mov dword [esp], 0x415f40
call sub.libintl_2.dll_libintl_gettext
mov edi, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], eax
add edi, 0x20
mov dword [esp + 4], edi
call sub.msvcrt.dll_fputs
mov dword [esp], 0x415fc0
call sub.libintl_2.dll_libintl_gettext
mov ebx, dword [0x429750]
mov dword [esp], eax
mov dword [esp + 4], ebx
call sub.msvcrt.dll_printf
mov dword [esp], 0x416000
call sub.libintl_2.dll_libintl_gettext
mov ecx, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], eax
add ecx, 0x20
mov dword [esp + 4], ecx
call sub.msvcrt.dll_fputs
mov dword [esp], 0x4160a0
call sub.libintl_2.dll_libintl_gettext
mov esi, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], eax
add esi, 0x20
mov dword [esp + 4], esi
call sub.msvcrt.dll_fputs
mov dword [esp], 0x4162e0
call sub.libintl_2.dll_libintl_gettext
mov ebp, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], eax
add ebp, 0x20
mov dword [esp + 4], ebp
call sub.msvcrt.dll_fputs
mov dword [esp], 0x4165e0
call sub.libintl_2.dll_libintl_gettext
mov edi, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], eax
add edi, 0x20
mov dword [esp + 4], edi
call sub.msvcrt.dll_fputs
mov dword [esp], 0x416900
call sub.libintl_2.dll_libintl_gettext
mov ebx, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], eax
add ebx, 0x20
mov dword [esp + 4], ebx
call sub.msvcrt.dll_fputs
mov dword [esp], 0x416ba0
call sub.libintl_2.dll_libintl_gettext
mov ecx, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], eax
add ecx, 0x20
mov dword [esp + 4], ecx
call sub.msvcrt.dll_fputs
mov dword [esp], 0x416ce0
call sub.libintl_2.dll_libintl_gettext
mov esi, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], eax
add esi, 0x20
mov dword [esp + 4], esi
call sub.msvcrt.dll_fputs
mov dword [esp], 0x416f00
call sub.libintl_2.dll_libintl_gettext
mov ebp, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], eax
add ebp, 0x20
mov dword [esp + 4], ebp
call sub.msvcrt.dll_fputs
mov dword [esp], 0x417200
call sub.libintl_2.dll_libintl_gettext
mov edi, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], eax
add edi, 0x20
mov dword [esp + 4], edi
call sub.msvcrt.dll_fputs
mov dword [esp], 0x4172c0
call sub.libintl_2.dll_libintl_gettext
mov ebx, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], eax
add ebx, 0x20
mov dword [esp + 4], ebx
call sub.msvcrt.dll_fputs
mov dword [esp], 0x417360
call sub.libintl_2.dll_libintl_gettext
mov ecx, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], eax
add ecx, 0x20
mov dword [esp + 4], ecx
call sub.msvcrt.dll_fputs
mov dword [esp], 0x417580
call sub.libintl_2.dll_libintl_gettext
mov esi, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], eax
add esi, 0x20
mov dword [esp + 4], esi
call sub.msvcrt.dll_fputs
mov dword [esp], 0x4176c0
call sub.libintl_2.dll_libintl_gettext
mov dword [esp], eax
mov dword [esp + 8], 0x14
mov dword [esp + 4], 0x415e4d
call sub.msvcrt.dll_printf
mov dword [esp], 0x417820
call sub.libintl_2.dll_libintl_gettext
mov ebp, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], eax
add ebp, 0x20
mov dword [esp + 4], ebp
call sub.msvcrt.dll_fputs
mov dword [esp], 0
jmp 0x417e42
mov dword [esp + 8], 0x417845
mov dword [esp + 4], 0x41549c
mov dword [esp], 0x41784a
call sub.msvcrt.dll_printf
mov dword [esp], 0x417860
call sub.libintl_2.dll_libintl_gettext
mov ebp, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], eax
add ebp, 0x20
mov dword [esp + 4], ebp
call sub.msvcrt.dll_fputs
mov dword [esp], 0x4178c0
call sub.libintl_2.dll_libintl_gettext
mov edi, dword [sym.imp.msvcrt.dll__iob]
mov dword [esp], eax
add edi, 0x20
mov dword [esp + 4], edi
call sub.msvcrt.dll_fputs
mov dword [esp], 0x417960
jmp 0x418cca
cmp esi, dword [esp + 0x40]
jae 0x418d75
mov ecx, dword [esi]
add esi, 4
mov dword [ebx], ecx
add ebx, 4
jmp 0x417aea
mov dword [esp], 0x4179a0
call sub.libintl_2.dll_libintl_gettext
movsx edx, byte [edi]
jmp 0x417f91