Function at 0x437b70
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
push edi
push esi
push ebx
sub esp, 0x5c
mov dword [esp + 0x18], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x10], edx
lea esi, [esi]
nop
call sub.cygwin1.dll___locale_mb_cur_max
mov ebx, dword [esp + 0x78]
mov dword [esp + 0x34], eax
and ebx, 2
cmp dword [esp + 0x74], 0xa
ja case.default.0x437ba7
mov eax, dword [esp + 0x74]
jmp dword [eax*4 + 0x465024]
je 0x437bfc
mov dword [esp + 4], 0x465013
mov dword [esp], 0x465015
call sub.cygintl_8.dll_libintl_dgettext
mov dword [esp + 0x80], eax
cmp eax, 0x465013
je 0x438cba
mov dword [esp + 4], 0x465009
mov dword [esp], 0x465015
call sub.cygintl_8.dll_libintl_dgettext
mov dword [esp + 0x84], eax
cmp eax, 0x465009
je 0x438ca0
xor esi, esi
test ebx, ebx
je 0x438c1a
mov eax, dword [esp + 0x84]
test ebx, ebx
setne byte [esp + 0x39]
mov dword [esp], eax
call sub.cygwin1.dll_strlen
mov byte [esp + 0x16], 1
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x84]
mov dword [esp + 0x2c], eax
mov byte [esp + 0x38], 1
mov ebp, esi
mov byte [esp + 0x3a], 0
mov byte [esp + 0x17], 0
mov dword [esp + 0x30], 0
xor edi, edi
lea esi, [esi]
nop
cmp dword [esp + 0x70], edi
setne al
cmp dword [esp + 0x70], 0xffffffff
mov esi, eax
jne 0x437c6d
mov eax, dword [esp + 0x1c]
cmp byte [eax + edi], 0
setne al
mov esi, eax
mov eax, esi
test al, al
je 0x438a29
cmp dword [esp + 0x74], 2
mov ecx, dword [esp + 0x1c]
setne al
and al, byte [esp + 0x16]
mov byte [esp + 0x15], al
lea ebx, [ecx + edi]
je 0x4381c0
mov eax, dword [esp + 0x20]
test eax, eax
je 0x4386b0
cmp dword [esp + 0x70], 0xffffffff
lea edx, [edi + eax]
jne 0x437cc3
cmp eax, 1
jbe 0x437cc3
mov dword [esp], ecx
mov dword [esp + 0x24], edx
call sub.cygwin1.dll_strlen
mov edx, dword [esp + 0x24]
mov dword [esp + 0x70], eax
cmp edx, dword [esp + 0x70]
ja 0x4386b0
mov eax, dword [esp + 0x20]
mov dword [esp], ebx
mov dword [esp + 8], eax
mov eax, dword [esp + 0x2c]
mov dword [esp + 4], eax
call sub.cygwin1.dll_memcmp
test eax, eax
jne 0x4386b0
cmp byte [esp + 0x39], 0
jne 0x437e8f
movzx ebx, byte [ebx]
cmp bl, 0x23
jg 0x4388a8
test bl, bl
js case.0x4381e0.1
cmp bl, 0x23
ja case.0x4381e0.1
movzx eax, bl
jmp dword [eax*4 + 0x465050]
cmp bl, 0x5b
je 0x438870
xor edx, edx
cmp bl, 0x40
jne 0x438090
mov byte [esp + 0x15], 0
cmp dword [esp + 0x34], 1
jne 0x438443
lea esi, [esi]
call sub.cygwin1.dll___locale_ctype_ptr
movzx edx, bl
mov dword [esp + 0x28], 1
movsx eax, byte [edx + eax + 1]
test al, 0x97
setne al
sete dl
and dl, byte [esp + 0x16]
mov esi, eax
test dl, dl
jne 0x438b44
lea esi, [esi]
nop
cmp dword [esp + 0x74], 2
sete dl
movzx eax, byte [esp + 0x16]
xor eax, 1
or al, dl
jne 0x43805d
mov edx, dword [esp + 0x7c]
test edx, edx
je 0x437db0
mov edx, ebx
mov ecx, dword [esp + 0x7c]
shr dl, 5
movzx edx, dl
mov edx, dword [ecx + edx*4]
mov ecx, ebx
shr edx, cl
and edx, 1
jne 0x437dbb
cmp byte [esp + 0x15], 0
je 0x438352
cmp dword [esp + 0x74], 2
sete dl
cmp byte [esp + 0x39], 0
mov eax, edx
jne 0x437f08
movzx eax, byte [esp + 0x17]
xor eax, 1
and al, dl
je 0x437e15
cmp dword [esp + 0x10], ebp
jbe 0x437dea
mov edx, dword [esp + 0x18]
mov byte [edx + ebp], 0x27
lea edx, [ebp + 1]
cmp dword [esp + 0x10], edx
jbe 0x437dfc
mov edx, dword [esp + 0x18]
mov byte [edx + ebp + 1], 0x24
lea edx, [ebp + 2]
cmp dword [esp + 0x10], edx
jbe 0x437e0e
mov edx, dword [esp + 0x18]
mov byte [edx + ebp + 2], 0x27
mov byte [esp + 0x17], al
add ebp, 3
cmp dword [esp + 0x10], ebp
jbe 0x437e23
mov eax, dword [esp + 0x18]
mov byte [eax + ebp], 0x5c
add ebp, 1
add edi, 1
cmp ebp, dword [esp + 0x10]
jae 0x437e36
mov eax, dword [esp + 0x18]
mov byte [eax + ebp], bl
mov eax, esi
movzx esi, byte [esp + 0x38]
add ebp, 1
test al, al
mov eax, 0
cmove esi, eax
mov eax, esi
mov byte [esp + 0x38], al
jmp 0x437c50
cmp bl, 0x7c
jne case.0x4381e0.1
xor esi, esi
cmp dword [esp + 0x74], 2
sete dl
jne 0x437d80
cmp byte [esp + 0x39], 0
je 0x437d80
mov dword [esp + 0x74], 2
cmp byte [esp + 0x16], 0
jne 0x437f17
and dword [esp + 0x78], 0xfffffffd
mov dword [esp + 0x7c], 0
jmp 0x437b88
mov ebx, 0x72
xor esi, esi
jmp 0x437dbb
mov ebx, 0x66
cmp dword [esp + 0x74], 2
sete al
cmp byte [esp + 0x39], 0
jne 0x437efc
xor esi, esi
jmp 0x437e15
mov ebx, 0x6e
xor esi, esi
jmp 0x437dbb
cmp dword [esp + 0x74], 2
mov ebx, 0x62
sete al
cmp byte [esp + 0x39], 0
je 0x437ecc
movzx ecx, byte [esp + 0x39]
mov byte [esp + 0x16], cl
lea esi, [esi]
and byte [esp + 0x16], al
cmp byte [esp + 0x16], 0
je 0x437e8f
and dword [esp + 0x78], 0xfffffffd
call sub.cygwin1.dll___locale_mb_cur_max
mov dword [esp + 0x7c], 0
mov dword [esp + 0x34], eax
mov byte [esp + 0x16], 1
jmp 0x4389dd
mov ebx, 0x61
jmp 0x437ebd
cmp byte [esp + 0x39], 0
jne 0x438d31
mov byte [esp + 0x15], 0
movzx eax, byte [esp + 0x17]
cmp dword [esp + 0x74], 2
sete dl
xor eax, 1
and al, dl
je 0x438ae0
cmp dword [esp + 0x10], ebp
jbe 0x437f86
mov ecx, dword [esp + 0x18]
mov byte [ecx + ebp], 0x27
lea ecx, [ebp + 1]
cmp dword [esp + 0x10], ecx
jbe 0x437f98
mov ecx, dword [esp + 0x18]
mov byte [ecx + ebp + 1], 0x24
lea ecx, [ebp + 2]
cmp dword [esp + 0x10], ecx
jbe 0x437faa
mov ecx, dword [esp + 0x18]
mov byte [ecx + ebp + 2], 0x27
lea ecx, [ebp + 3]
cmp dword [esp + 0x10], ecx
jbe 0x438b5a
mov ebp, ecx
mov ecx, dword [esp + 0x18]
mov byte [esp + 0x17], al
mov byte [ecx + ebp], 0x5c
mov ecx, ebp
add ebp, 1
cmp dword [esp + 0x74], 2
je 0x438b77
lea eax, [edi + 1]
mov ebx, 0x30
cmp eax, dword [esp + 0x70]
jae 0x437ffb
mov eax, dword [esp + 0x1c]
movzx eax, byte [eax + edi + 1]
mov byte [esp + 0x24], al
sub eax, 0x30
cmp al, 9
jbe 0x438bed
movzx eax, byte [esp + 0x16]
xor eax, 1
or al, dl
mov eax, esi
mov esi, 0
je 0x437d90
jmp 0x437db0
mov ebx, 0x23
test edi, edi
je 0x437e63
movzx eax, byte [esp + 0x15]
jmp 0x43883f
mov byte [esp + 0x15], 0
mov ebx, 9
mov edx, 0x74
nop
cmp byte [esp + 0x16], 0
jne 0x438e6c
xor esi, esi
xor eax, eax
cmp byte [esp + 0x39], 0
jne 0x437d90
jmp 0x437db0
mov ebx, 0x76
xor esi, esi
jmp 0x437dbb
movzx edx, byte [esp + 0x15]
lea esi, [esi]
mov ebx, 0x20
lea esi, [esi]
movzx esi, byte [esp + 0x15]
xor eax, eax
mov byte [esp + 0x15], dl
jmp 0x437d90
test ebx, ebx
jne 0x438c7f
mov eax, dword [esp + 0x10]
mov esi, 1
mov dword [esp + 0x74], 5
mov dword [esp + 0x2c], 0x465007
mov ebp, esi
mov dword [esp + 0x20], 1
mov byte [esp + 0x16], 1
mov byte [esp + 0x39], 0
mov byte [esp + 0x17], 0
mov byte [esp + 0x3a], 0
mov byte [esp + 0x38], 1
mov dword [esp + 0x30], 0
test eax, eax
je 0x437c49
mov eax, dword [esp + 0x18]
mov byte [eax], 0x22
jmp 0x437c49
mov byte [esp + 0x39], 1
xor esi, esi
mov byte [esp + 0x16], 1
mov dword [esp + 0x20], 1
mov dword [esp + 0x2c], 0x465009
mov dword [esp + 0x74], 2
jmp 0x437c30
mov byte [esp + 0x39], 0
xor esi, esi
mov byte [esp + 0x16], 1
mov dword [esp + 0x20], 0
mov dword [esp + 0x2c], 0
jmp 0x437c30
mov eax, dword [esp + 0x74]
mov byte [esp + 0x39], 1
xor esi, esi
mov byte [esp + 0x16], 0
mov dword [esp + 0x20], eax
mov dword [esp + 0x2c], 0x465009
mov dword [esp + 0x74], 2
jmp 0x437c30
mov byte [esp + 0x39], 1
xor esi, esi
mov byte [esp + 0x16], 1
mov dword [esp + 0x20], 1
mov dword [esp + 0x2c], 0x465007
mov dword [esp + 0x74], 5
jmp 0x437c30
mov eax, dword [esp + 0x74]
mov byte [esp + 0x39], 0
mov byte [esp + 0x16], 0
mov dword [esp + 0x20], eax
mov esi, eax
mov dword [esp + 0x2c], 0
jmp 0x437c30
movzx ebx, byte [ebx]
cmp bl, 0x23
jg 0x4382c0
test bl, bl
js case.0x4381e0.1
cmp bl, 0x23
ja case.0x4381e0.1
movzx eax, bl
jmp dword [eax*4 + 0x4650e0]
mov ebx, 0xc
mov edx, 0x66
jmp 0x438050
mov ebx, 9
mov edx, 0x74
cmp dword [esp + 0x74], 2
sete al
and al, byte [esp + 0x39]
mov byte [esp + 0x15], al
je 0x438050
jmp 0x437e7c
mov ebx, 8
mov edx, 0x62
jmp 0x438050
cmp byte [esp + 0x16], 0
jne case.0x4386cc.0
mov byte [esp + 0x15], 0
xor ebx, ebx
test byte [esp + 0x78], 1
je 0x43805b
add edi, 1
jmp 0x437c50
mov ebx, 0xb
mov edx, 0x76
jmp 0x438050
mov ebx, 0x20
jmp 0x437e63
mov ebx, 0xd
mov edx, 0x72
jmp 0x43820a
mov ebx, 7
mov edx, 0x61
jmp 0x438050
mov ebx, 0xa
mov edx, 0x6e
jmp 0x43820a
cmp bl, 0x7a
jg 0x438420
cmp bl, 0x5b
jg 0x4383c0
cmp bl, 0x3e
jg 0x438398
lea ecx, [ebx - 0x24]
mov eax, 1
shl eax, cl
test eax, 0x7fff82
jne 0x437d78
test eax, 0x7800075
jne case.0x4381e0.33
cmp bl, 0x27
jne case.0x4381e0.1
cmp dword [esp + 0x74], 2
jne 0x438757
cmp byte [esp + 0x39], 0
jne 0x437e84
mov eax, dword [esp + 0x10]
test eax, eax
je 0x438af6
mov ecx, dword [esp + 0x30]
test ecx, ecx
jne 0x438af6
mov eax, dword [esp + 0x10]
mov dword [esp + 0x10], 0
mov dword [esp + 0x30], eax
mov eax, esi
mov byte [esp + 0x17], 0
add ebp, 3
mov byte [esp + 0x3a], al
xor eax, eax
xor eax, 1
add edi, 1
and al, byte [esp + 0x17]
test al, al
je 0x437e29
cmp dword [esp + 0x10], ebp
jbe 0x438372
mov eax, dword [esp + 0x18]
mov byte [eax + ebp], 0x27
lea eax, [ebp + 1]
cmp dword [esp + 0x10], eax
jbe 0x438384
mov eax, dword [esp + 0x18]
mov byte [eax + ebp + 1], 0x27
mov byte [esp + 0x17], 0
add ebp, 2
jmp 0x437e29
cmp bl, 0x3f
jne 0x438658
cmp dword [esp + 0x74], 2
jne 0x43877e
cmp byte [esp + 0x39], 0
jne 0x437e84
xor esi, esi
jmp 0x438350
lea ecx, [ebx - 0x5c]
mov eax, 1
shl eax, cl
test eax, 0x7fffffea
jne 0x437d78
test al, 0x14
jne case.0x4381e0.33
and eax, 1
mov byte [esp + 0x15], al
je case.0x4381e0.1
cmp dword [esp + 0x74], 2
je 0x438ad0
mov eax, dword [esp + 0x20]
movzx edx, byte [esp + 0x16]
and dl, byte [esp + 0x39]
test eax, eax
setne al
and dl, al
mov byte [esp + 0x15], dl
jne 0x43880c
mov edx, 0x5c
jmp 0x438050
cmp bl, 0x7d
je 0x438678
jle 0x43866f
cmp bl, 0x7e
je 0x438025
cmp dword [esp + 0x34], 1
je 0x437d48
cmp dword [esp + 0x70], 0xffffffff
mov dword [esp + 0x48], 0
mov dword [esp + 0x4c], 0
jne 0x43846a
mov eax, dword [esp + 0x1c]
mov dword [esp], eax
call sub.cygwin1.dll_strlen
mov dword [esp + 0x70], eax
mov dword [esp + 0x24], edi
xor eax, eax
mov dword [esp + 0x3c], ebp
mov byte [esp + 0x3b], bl
mov ebx, eax
mov eax, dword [esp + 0x24]
lea edi, [eax + ebx]
lea eax, [esp + 0x48]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0x70]
sub eax, edi
mov dword [esp + 8], eax
mov eax, dword [esp + 0x1c]
add eax, edi
mov dword [esp + 4], eax
lea eax, [esp + 0x46]
mov dword [esp], eax
call fcn.004378a0
mov ebp, eax
test eax, eax
je 0x438500
cmp eax, 0xffffffff
je 0x438bd0
cmp eax, 0xfffffffe
je 0x438b85
cmp dword [esp + 0x74], 2
jne 0x4384d3
cmp byte [esp + 0x39], 0
jne 0x438978
movzx eax, word [esp + 0x46]
mov dword [esp], eax
call sub.cygwin1.dll_iswprint
test eax, eax
mov eax, 0
cmove esi, eax
lea eax, [esp + 0x48]
add ebx, ebp
mov dword [esp], eax
call sub.cygwin1.dll_mbsinit
test eax, eax
je 0x43847a
mov eax, esi
mov edi, dword [esp + 0x24]
mov ebp, dword [esp + 0x3c]
mov dword [esp + 0x28], ebx
xor eax, 1
movzx ebx, byte [esp + 0x3b]
and al, byte [esp + 0x16]
mov edx, eax
cmp dword [esp + 0x28], 1
jbe 0x437d6b
mov eax, dword [esp + 0x28]
mov byte [esp + 0x24], dl
xor ecx, ecx
mov edx, dword [esp + 0x10]
add eax, edi
mov dword [esp + 0x28], eax
mov eax, esi
mov esi, dword [esp + 0x18]
mov byte [esp + 0x3b], al
jmp 0x4385f4
cmp dword [esp + 0x74], 2
sete cl
cmp byte [esp + 0x39], 0
jne 0x438b3b
movzx eax, byte [esp + 0x17]
xor eax, 1
and cl, al
je 0x438596
cmp edx, ebp
jbe 0x438577
mov byte [esi + ebp], 0x27
lea eax, [ebp + 1]
cmp edx, eax
jbe 0x438583
mov byte [esi + ebp + 1], 0x24
lea eax, [ebp + 2]
cmp edx, eax
jbe 0x43858f
mov byte [esi + ebp + 2], 0x27
mov byte [esp + 0x17], cl
add ebp, 3
cmp edx, ebp
jbe 0x43859e
mov byte [esi + ebp], 0x5c
lea eax, [ebp + 1]
cmp edx, eax
jbe 0x4385b1
mov eax, ebx
shr al, 6
add eax, 0x30
mov byte [esi + ebp + 1], al
lea eax, [ebp + 2]
cmp edx, eax
jbe 0x4385c7
mov eax, ebx
shr al, 3
and eax, 7
add eax, 0x30
mov byte [esi + ebp + 2], al
and ebx, 7
add ebp, 3
add edi, 1
add ebx, 0x30
cmp dword [esp + 0x28], edi
jbe 0x438b50
movzx ecx, byte [esp + 0x24]
cmp edx, ebp
jbe 0x4385e9
mov byte [esi + ebp], bl
mov eax, dword [esp + 0x1c]
add ebp, 1
movzx ebx, byte [eax + edi]
cmp byte [esp + 0x24], 0
jne 0x438550
mov eax, ecx
xor eax, 1
and al, byte [esp + 0x17]
cmp byte [esp + 0x15], 0
je 0x43861a
cmp edx, ebp
jbe 0x438617
mov byte [esi + ebp], 0x5c
add ebp, 1
add edi, 1
cmp edi, dword [esp + 0x28]
jae 0x438b31
test al, al
je 0x438b6d
cmp edx, ebp
jbe 0x438637
mov byte [esi + ebp], 0x27
lea eax, [ebp + 1]
cmp edx, eax
jbe 0x438643
mov byte [esi + ebp + 1], 0x27
mov byte [esp + 0x15], 0
add ebp, 2
mov byte [esp + 0x17], 0
jmp 0x4385e2
cmp bl, 0x5b
je case.0x4381e0.33
cmp bl, 0x40
jne 0x437d78
jmp case.0x4381e0.1
cmp bl, 0x7b
jne 0x437e58
cmp dword [esp + 0x70], 0xffffffff
je 0x438890
lea esi, [esi]
nop
cmp dword [esp + 0x70], 1
je 0x438025
lea esi, [esi]
nop
cmp dword [esp + 0x74], 2
sete dl
xor esi, esi
jmp 0x437d80
movzx ebx, byte [ebx]
cmp bl, 0x23
jg 0x438710
test bl, bl
js case.0x4386cc.1
cmp bl, 0x23
ja case.0x4386cc.1
movzx eax, bl
jmp dword [eax*4 + 0x465170]
mov byte [esp + 0x15], 0
xor esi, esi
jmp 0x437e63
mov byte [esp + 0x15], 0
mov ebx, 0x23
jmp 0x438025
xor edx, edx
jmp 0x438088
cmp bl, 0x7a
jg 0x438820
cmp bl, 0x5b
jg 0x4387c0
cmp bl, 0x3e
jg 0x438770
lea ecx, [ebx - 0x24]
mov eax, 1
xor edx, edx
shl eax, cl
test eax, 0x7fff82
jne 0x438090
mov byte [esp + 0x15], 0
test eax, 0x7800075
jne 0x438698
cmp bl, 0x27
jne case.0x4381e0.1
mov eax, esi
xor edx, edx
mov ebx, 0x27
mov byte [esp + 0x3a], al
jmp 0x437d80
cmp bl, 0x3f
jne 0x437d20
mov byte [esp + 0x15], 0
cmp dword [esp + 0x74], 5
jne 0x4387a8
test byte [esp + 0x78], 4
je 0x4387a8
lea eax, [edi + 2]
cmp eax, dword [esp + 0x70]
jae 0x4387a8
mov esi, dword [esp + 0x1c]
cmp byte [esi + edi + 1], 0x3f
je 0x438c57
lea esi, [esi]
xor edx, edx
xor esi, esi
mov ebx, 0x3f
jmp 0x437d80
lea ecx, [ebx - 0x5c]
mov eax, 1
xor edx, edx
shl eax, cl
test eax, 0x7fffffea
jne 0x438090
mov byte [esp + 0x15], 0
test al, 0x14
jne 0x438698
and eax, 1
mov byte [esp + 0x15], al
je case.0x4381e0.1
movzx ecx, byte [esp + 0x39]
test byte [esp + 0x16], cl
je 0x438e60
mov eax, dword [esp + 0x20]
test eax, eax
je 0x438e60
movzx eax, byte [esp + 0x17]
add edi, 1
xor esi, esi
mov ebx, 0x5c
jmp 0x43835c
cmp bl, 0x7d
je 0x438880
jle 0x438852
xor eax, eax
cmp bl, 0x7e
jne case.0x4386cc.1
test edi, edi
je 0x438e7f
mov ebx, 0x7e
cmp dword [esp + 0x74], 2
mov byte [esp + 0x15], al
sete dl
xor esi, esi
jmp 0x437d80
mov byte [esp + 0x15], 0
cmp bl, 0x7b
je 0x438678
cmp bl, 0x7c
je 0x438698
jmp case.0x4381e0.1
mov byte [esp + 0x15], 0
jmp 0x438698
cmp dword [esp + 0x70], 0xffffffff
mov byte [esp + 0x15], 0
jne 0x438688
mov eax, dword [esp + 0x1c]
cmp byte [eax + 1], 0
jne 0x438698
jmp 0x438025
cmp bl, 0x7a
jg 0x438940
cmp bl, 0x5b
jg 0x438910
cmp bl, 0x3e
jg 0x4388e8
lea ecx, [ebx - 0x24]
mov eax, 1
movzx edx, byte [esp + 0x15]
shl eax, cl
test eax, 0x7fff82
jne 0x438090
test eax, 0x7800075
jne 0x438698
jmp 0x43874e
cmp bl, 0x3f
je 0x43877e
cmp bl, 0x5b
je 0x438698
movzx edx, byte [esp + 0x15]
cmp bl, 0x40
jne 0x438090
jmp case.0x4381e0.1
lea ecx, [ebx - 0x5c]
mov eax, 1
movzx edx, byte [esp + 0x15]
shl eax, cl
test eax, 0x7fffffea
jne 0x438090
test al, 0x14
jne 0x438698
test al, 1
jne 0x4387f1
jmp case.0x4381e0.1
cmp bl, 0x7d
je 0x438678
jle 0x43895e
movzx eax, byte [esp + 0x15]
cmp bl, 0x7e
je 0x438832
jmp case.0x4381e0.1
cmp bl, 0x7b
je 0x438678
cmp bl, 0x7c
je 0x438698
jmp case.0x4381e0.1
cmp eax, 1
je 0x4384d3
mov eax, dword [esp + 0x1c]
lea edx, [eax + edi + 1]
add eax, ebp
lea ecx, [eax + edi]
jmp 0x43899f
cmp al, 0x5a
jg 0x4389b7
add edx, 1
cmp ecx, edx
je 0x4384d3
movzx eax, byte [edx]
cmp al, 0x5c
jle 0x438990
sub eax, 0x5e
cmp al, 0x1e
ja 0x438994
mov edi, 0x40000005
bt edi, eax
jae 0x438994
cmp byte [esp + 0x16], 0
jne 0x437f17
and dword [esp + 0x78], 0xfffffffd
call sub.cygwin1.dll___locale_mb_cur_max
mov dword [esp + 0x7c], 0
mov dword [esp + 0x34], eax
mov byte [esp + 0x16], 0
mov eax, dword [esp + 0x10]
mov dword [esp + 0x74], 2
mov esi, 1
mov dword [esp + 0x2c], 0x465009
mov dword [esp + 0x20], 1
mov byte [esp + 0x39], 0
mov byte [esp + 0x17], 0
mov byte [esp + 0x3a], 0
mov byte [esp + 0x38], 1
test eax, eax
jne 0x438e9a
mov dword [esp + 0x30], 0
mov ebp, esi
jmp 0x437c49
movzx ecx, byte [esp + 0x39]
cmp dword [esp + 0x74], 2
sete bl
test ebp, ebp
mov eax, ecx
sete dl
and eax, ebx
test dl, al
jne 0x4389b7
mov eax, ecx
xor eax, 1
and bl, al
je 0x438dd3
cmp byte [esp + 0x3a], 0
je 0x438dc6
cmp byte [esp + 0x38], 0
jne 0x438d8f
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x30]
test edx, edx
sete al
test ecx, ecx
setne dl
and al, dl
je 0x438d41
mov edx, dword [esp + 0x30]
mov byte [esp + 0x3a], al
mov edi, dword [esp + 0x18]
mov esi, 1
mov eax, dword [esp + 0x30]
mov byte [esp + 0x39], 0
mov ebp, esi
mov byte [edi], 0x27
mov dword [esp + 0x10], eax
mov dword [esp + 0x30], edx
mov dword [esp + 0x20], 1
mov dword [esp + 0x2c], 0x465009
mov dword [esp + 0x74], 2
jmp 0x437c49
cmp byte [esp + 0x39], 0
je 0x43880c
jmp 0x437e84
mov ecx, ebp
cmp dword [esp + 0x10], ebp
jbe 0x437fc7
movzx eax, byte [esp + 0x17]
jmp 0x437fb9
cmp dword [esp + 0x10], ebp
jbe 0x438b04
mov eax, dword [esp + 0x18]
mov byte [eax + ebp], 0x27
lea eax, [ebp + 1]
cmp dword [esp + 0x10], eax
jbe 0x438b16
mov eax, dword [esp + 0x18]
mov byte [eax + ebp + 1], 0x5c
lea eax, [ebp + 2]
cmp dword [esp + 0x10], eax
jbe 0x438342
mov eax, dword [esp + 0x18]
mov byte [eax + ebp + 2], 0x27
jmp 0x438342
movzx esi, byte [esp + 0x3b]
jmp 0x43835c
mov byte [esp + 0x16], cl
jmp 0x437e84
movzx edx, byte [esp + 0x16]
xor esi, esi
jmp 0x438527
movzx esi, byte [esp + 0x3b]
jmp 0x437e29
mov byte [esp + 0x17], al
add ebp, 4
xor esi, esi
mov ebx, 0x30
jmp 0x437db0
mov byte [esp + 0x15], 0
jmp 0x4385e2
mov eax, esi
mov ebx, 0x30
xor esi, esi
jmp 0x437db0
mov dword [esp + 0x28], ebx
mov ecx, edi
movzx ebx, byte [esp + 0x3b]
mov edi, dword [esp + 0x24]
mov ebp, dword [esp + 0x3c]
cmp ecx, dword [esp + 0x70]
jae 0x438bc4
mov eax, dword [esp + 0x28]
mov edx, dword [esp + 0x1c]
mov esi, dword [esp + 0x70]
jmp 0x438bba
add eax, 1
lea ecx, [edi + eax]
cmp ecx, esi
jae 0x438bc0
cmp byte [edx + ecx], 0
jne 0x438bb0
mov dword [esp + 0x28], eax
movzx edx, byte [esp + 0x16]
xor esi, esi
jmp 0x43851c
mov edi, dword [esp + 0x24]
mov ebp, dword [esp + 0x3c]
mov dword [esp + 0x28], ebx
xor esi, esi
movzx ebx, byte [esp + 0x3b]
movzx edx, byte [esp + 0x16]
jmp 0x43851c
cmp dword [esp + 0x10], ebp
jbe 0x438bfb
mov eax, dword [esp + 0x18]
mov byte [eax + ebp], 0x30
lea eax, [ecx + 2]
cmp dword [esp + 0x10], eax
jbe 0x438c0d
mov eax, dword [esp + 0x18]
mov byte [eax + ecx + 2], 0x30
lea ebp, [ecx + 3]
mov ebx, 0x30
jmp 0x437ffb
mov eax, dword [esp + 0x80]
movzx eax, byte [eax]
test al, al
je 0x437c06
mov edi, dword [esp + 0x18]
mov edx, dword [esp + 0x10]
mov ecx, dword [esp + 0x80]
lea esi, [esi]
nop
cmp edx, esi
jbe 0x438c47
mov byte [edi + esi], al
add esi, 1
movzx eax, byte [ecx + esi]
test al, al
jne 0x438c40
jmp 0x437c06
movzx ebx, byte [esi + eax]
lea ecx, [ebx - 0x21]
cmp cl, 0x1d
ja 0x4387a8
mov edx, 0x380051c1
shr edx, cl
and edx, 1
jne 0x438cd4
xor esi, esi
mov ebx, 0x3f
jmp 0x437d80
mov byte [esp + 0x39], 1
xor esi, esi
mov byte [esp + 0x16], 1
mov dword [esp + 0x20], 1
mov dword [esp + 0x2c], 0x465007
jmp 0x437c30
mov edx, dword [esp + 0x74]
mov eax, 0x465009
call fcn.00437aa0
mov dword [esp + 0x84], eax
jmp 0x437bfc
mov edx, dword [esp + 0x74]
mov eax, 0x465013
call fcn.00437aa0
mov dword [esp + 0x80], eax
jmp 0x437bd6
cmp byte [esp + 0x39], 0
jne 0x437e8f
cmp dword [esp + 0x10], ebp
jbe 0x438ced
mov edi, dword [esp + 0x18]
mov byte [edi + ebp], 0x3f
lea edx, [ebp + 1]
cmp dword [esp + 0x10], edx
jbe 0x438cff
mov edi, dword [esp + 0x18]
mov byte [edi + ebp + 1], 0x22
lea edx, [ebp + 2]
cmp dword [esp + 0x10], edx
jbe 0x438d11
mov edi, dword [esp + 0x18]
mov byte [edi + ebp + 2], 0x22
lea edx, [ebp + 3]
cmp dword [esp + 0x10], edx
jbe 0x438d23
mov edi, dword [esp + 0x18]
mov byte [edi + ebp + 3], 0x3f
add ebp, 4
xor edx, edx
xor esi, esi
mov edi, eax
jmp 0x437ffb
cmp dword [esp + 0x74], 2
je 0x437f17
jmp 0x437e8f
mov esi, dword [esp + 0x10]
movzx eax, byte [esp + 0x3a]
mov edx, ebp
mov edi, dword [esp + 0x2c]
test edi, edi
je 0x438d79
test al, al
je 0x438d79
movzx ecx, byte [edi]
mov eax, edi
test cl, cl
je 0x438d79
mov ebx, dword [esp + 0x18]
sub eax, edx
cmp esi, edx
jbe 0x438d6e
mov byte [ebx + edx], cl
add edx, 1
movzx ecx, byte [eax + edx]
test cl, cl
jne 0x438d67
cmp esi, edx
jbe 0x438d85
mov eax, dword [esp + 0x18]
mov byte [eax + edx], 0
add esp, 0x5c
mov eax, edx
pop ebx
pop esi
pop edi
pop ebp
ret
call sub.cygwin1.dll___locale_mb_cur_max
xor ebp, ebp
mov dword [esp + 0x74], 5
mov dword [esp + 0x34], eax
mov dword [esp + 0x2c], 0x465007
mov dword [esp + 0x20], 1
test byte [esp + 0x78], 2
jne 0x438dde
mov eax, dword [esp + 0x30]
mov dword [esp + 0x10], eax
jmp 0x4380a8
mov esi, dword [esp + 0x10]
mov edx, ebp
mov eax, ebx
jmp 0x438d4c
mov esi, dword [esp + 0x10]
mov edx, ebp
jmp 0x438d4c
mov eax, dword [esp + 0x30]
mov byte [esp + 0x3a], 0
mov byte [esp + 0x17], 0
mov dword [esp + 0x10], eax
movzx eax, byte [esp + 0x38]
mov dword [esp + 0x30], 0
mov byte [esp + 0x39], al
mov byte [esp + 0x16], al
jmp 0x437c49
test ebx, ebx
je 0x437f2d
mov byte [esp + 0x39], 1
xor esi, esi
mov byte [esp + 0x16], 0
mov dword [esp + 0x20], 1
mov dword [esp + 0x2c], 0x465009
mov dword [esp + 0x74], 2
jmp 0x437c30
test ebx, ebx
je 0x438e75
mov byte [esp + 0x39], 1
xor esi, esi
mov byte [esp + 0x16], 0
mov dword [esp + 0x20], 1
mov dword [esp + 0x2c], 0x465009
jmp 0x437c30
mov ebx, 0x5c
xor esi, esi
jmp 0x437dbb
mov ebx, edx
xor esi, esi
jmp 0x437dbb
mov byte [esp + 0x16], 0
jmp 0x4389dd
cmp dword [esp + 0x74], 2
movzx esi, byte [esp + 0x15]
mov ebx, 0x7e
mov byte [esp + 0x15], al
sete dl
jmp 0x437d80
mov eax, dword [esp + 0x10]
xor edx, edx
mov dword [esp + 0x30], eax
xor eax, eax
jmp 0x438a88