Function at 0x1177050
Capabilities:
Clear file content

Disassembly:
mov edi, edi
push ebp
mov ebp, esp
mov eax, 0x325c
call fcn.01178910
cmp dword [ebp + 0x10], 0
push ebx
mov ebx, dword [ebp + 0xc]
push esi
push edi
mov edi, dword [ebp + 8]
mov al, byte [edi + 0x42db]
mov esi, ecx
mov dword [ebp - 8], esi
mov byte [ebp - 0xc], al
jne 0x11770c5
cmp byte [esi + 0x6e], 0
je 0x1177e24
mov ecx, dword [ebp - 0xc]
push ecx
push 0
lea edx, [esi + 0x28]
push edx
push ebx
call fcn.011753f0
test al, al
jne 0x11770be
cmp dword [0x1182db0], 0
mov eax, 1
jne 0x11770ad
mov dword [0x1182db0], eax
add dword [0x1182db4], eax
pop edi
pop esi
xor al, al
pop ebx
mov esp, ebp
pop ebp
ret 0x10
mov byte [esi + 0x19df], 0
mov eax, dword [ebx + 0x4f4c]
cmp eax, 0x74
je 0x117718b
mov edi, 1
cmp eax, 0x76
je 0x11770e3
cmp eax, 0x79
jne 0x11770ea
mov byte [esi + 0x19df], 1
cmp eax, 0x7a
jne 0x117711c
push 0x1026a28
lea ecx, [ebx + 0x5c88]
call fcn.011650a0
test al, al
je 0x117710a
mov byte [esi + 0x19df], 1
mov ecx, ebx
call fcn.01173280
pop edi
pop esi
mov al, 1
pop ebx
mov esp, ebp
pop ebp
ret 0x10
cmp eax, 0x7b
jne 0x117710a
test byte [ebx + 0x5c68], 1
je 0x1177e24
mov eax, dword [ebp - 0xc]
push eax
push 0
lea ecx, [esi + 0x28]
push ecx
push ebx
call fcn.011753f0
test al, al
jne 0x1177162
cmp dword [0x1182db0], 0
jne 0x1177151
mov dword [0x1182db0], edi
add dword [0x1182db4], edi
pop edi
pop esi
xor al, al
pop ebx
mov esp, ebp
pop ebp
ret 0x10
mov byte [esi + 0x19df], 0
mov edx, dword [ebx + 0x764c]
mov eax, dword [ebx + 0x7648]
push 0
push edx
push eax
mov ecx, ebx
call fcn.01172b80
pop edi
pop esi
mov al, 1
pop ebx
mov esp, ebp
pop ebp
ret 0x10
cmp byte [esi + 0x19df], 0
mov byte [esi + 0xddd], 0
jne 0x1177e24
cmp dword [edi + 0x2d4c], 0
jne 0x11771c6
mov ecx, dword [edi + 0x5b0c]
mov edx, dword [esi + 0xd4]
cmp edx, dword [ecx + 0x20]
jb 0x11771c6
cmp byte [esi + 0xd9], 0
jne 0x1177e24
lea esi, [ebx + 0x4fa8]
push esi
push esi
call dword [sym.imp.USER32.dll_OemToCharA]
push 0x3ff
lea eax, [ebp - 0x59c]
push esi
push eax
call dword [sym.imp.msvcrt.dll_strncpy]
add esp, 0xc
xor ecx, ecx
push 5
lea edx, [ebp + 0x13]
push edx
lea eax, [ebx + 0x4f78]
mov word [ebp - 0x1dbc], cx
mov byte [ebp + 0x13], cl
push eax
mov ecx, edi
call fcn.01174430
test eax, eax
setne al
mov byte [ebp - 3], al
test al, al
je 0x1177228
cmp byte [ebp + 0x13], 0
jne 0x1177228
mov esi, dword [ebp - 8]
mov byte [esi + 0xd9], 0
jmp 0x117722b
mov esi, dword [ebp - 8]
mov ecx, 0x200
test word [ebx + 0x4f80], cx
je 0x1177325
lea eax, [ebp - 0x1dbc]
push eax
lea ecx, [ebx + 0x53a8]
lea edx, [esi + 0x11de]
push ecx
mov byte [ebp - 1], 1
mov dword [ebp - 0x1c], edx
call fcn.011690c0
push 0x1000000
lea edx, [ebp - 0x15bc]
push edx
lea eax, [ebp - 0x1dbc]
push eax
call fcn.01165fd0
test al, al
je 0x11772a3
lea ecx, [ebp - 0x15bc]
push ecx
call fcn.01169410
test al, al
je 0x11772a3
xor eax, eax
jmp 0x1177290
mov cl, byte [ebp + eax - 0x15bc]
mov byte [ebp + eax - 0x59c], cl
inc eax
test cl, cl
jne 0x1177290
lea edx, [ebp - 0x59c]
push edx
mov eax, edx
push eax
call fcn.01168f90
cmp byte [ebx + 0x4f8c], 2
ja 0x11772c8
test byte [ebx + 0x4f9c], 8
jne 0x1177111
movzx eax, word [ebx + 0x4f80]
test eax, 0x800
je 0x1177335
mov eax, dword [edi + 0x32a4]
cmp eax, 1
je 0x1177348
cmp byte [ebp + 0x13], 0
jne 0x1177348
test eax, eax
jne 0x11772ee
mov byte [ebp - 3], al
push 0
lea ecx, [ebp - 0x1dbc]
push ecx
lea edx, [ebp - 0x59c]
push edx
call fcn.01169560
mov ecx, dword [edi + 0x32a4]
dec ecx
cmp ecx, eax
jne 0x1177344
push 1
lea edx, [ebp - 0x1dbc]
push edx
lea eax, [ebp - 0x59c]
push eax
call fcn.01169560
jmp 0x1177348
mov byte [ebp - 1], 0
mov dword [ebp - 0x1c], 0
jmp 0x11772a3
and al, 0xe0
cmp al, 0xe0
je 0x1177348
cmp dword [edi + 0x32a4], 1
jbe 0x1177348
mov byte [ebp - 3], 0
mov ecx, ebx
call fcn.01165310
mov cl, byte [ebx + 0x4f80]
shr cl, 1
and cl, 1
mov byte [esi + 0x6e], cl
mov byte [esi + 0x6f], 0
mov edx, dword [ebx + 0x7650]
sub edx, dword [ebx + 0x5c50]
mov eax, dword [ebx + 0x7654]
sbb eax, dword [ebx + 0x5c54]
push 0
push eax
push edx
mov ecx, ebx
call fcn.01172b80
cmp byte [ebp - 3], 0
mov byte [ebp - 2], 0
mov byte [ebp + 0x13], 0
mov byte [ebp + 0xf], 0
jne 0x11773a7
mov al, byte [ebx + 0x7659]
mov byte [ebp + 0xf], al
test al, al
je 0x1177dfa
test byte [ebx + 0x4f80], 4
je 0x1177433
cmp word [edi + 0x2818], 0
lea esi, [edi + 0x2818]
jne 0x1177417
mov eax, dword [edi + 0x42c8]
test eax, eax
je 0x1177e24
mov edx, dword [edi + 0x42c4]
push 0x80
lea ecx, [ebp - 0x9c]
push ecx
push edx
push 2
call eax
cmp eax, 0xffffffff
je 0x1177e24
push 0x80
push esi
push 0xffffffffffffffff
xor eax, eax
lea ecx, [ebp - 0x9c]
push ecx
push eax
push eax
mov word [esi], ax
call dword [sym.imp.KERNEL32.DLL_MultiByteToWideChar]
xor edx, edx
mov word [esi + 0xfe], dx
mov edx, dword [ebp - 8]
sub edx, esi
mov eax, esi
add edx, 0xcdc
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x1177424
mov esi, dword [ebp - 8]
add esi, 0xdde
lea eax, [edi + 0x410]
mov edx, esi
mov dword [ebp - 0x18], esi
sub edx, eax
lea esp, [esp]
mov cl, byte [eax]
mov byte [edx + eax], cl
inc eax
test cl, cl
jne 0x1177450
cmp dword [edi + 0x2d48], 4
jne 0x1177471
cmp byte [ebp - 0xc], 0x58
jne 0x1177471
mov byte [ebp + 0x13], 1
mov byte [esi], cl
jmp 0x117747b
cmp byte [ebp - 0xc], 0x45
mov byte [ebp + 0x13], 0
je 0x11774aa
cmp dword [edi + 0x2d48], 1
je 0x11774aa
lea eax, [ebp - 0x59c]
mov esi, eax
lea esp, [esp]
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x1177490
mov edi, dword [ebp - 0x18]
sub eax, esi
dec edi
lea ecx, [ecx]
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x11774a0
jmp 0x11774cd
lea eax, [ebp - 0x59c]
push eax
call fcn.01168e40
mov esi, eax
mov cl, byte [eax]
inc eax
test cl, cl
jne 0x11774b8
mov edi, dword [ebp - 0x18]
sub eax, esi
dec edi
mov cl, byte [edi + 1]
inc edi
test cl, cl
jne 0x11774c5
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
mov esi, dword [ebp - 0x18]
movzx ecx, byte [esi]
push ecx
call fcn.01165ca0
cmp byte [ebp + 0x13], 0
mov ecx, dword [ebp - 8]
mov dl, al
je 0x1177537
mov al, byte [ecx + 0xddf]
cmp al, 0x5f
jne 0x1177524
movsx eax, byte [ecx + 0xde0]
push eax
call fcn.01165790
test al, al
je 0x117751e
sub dl, 0x41
cmp dl, 0x19
ja 0x117751e
mov byte [ecx + 0xddf], 0x3a
jmp 0x1177537
mov al, byte [ecx + 0xddf]
cmp byte [esi], 0x5f
jne 0x1177537
cmp al, 0x5f
jne 0x1177537
mov byte [esi], 0x5c
mov byte [ecx + 0xddf], 0x5c
cmp byte [ebp - 1], 0
je 0x1177630
mov esi, dword [ebp + 8]
cmp word [esi + 0x810], 0
lea eax, [esi + 0x810]
lea edi, [ecx + 0x11de]
mov dword [ebp - 0x14], edi
je 0x1177572
mov edx, edi
sub edx, eax
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
test cx, cx
jne 0x1177561
jmp 0x1177584
push 0x1000000
push edi
lea eax, [esi + 0x410]
push eax
call fcn.01166010
cmp byte [ebp + 0x13], 0
je 0x117758f
xor ecx, ecx
mov word [edi], cx
cmp byte [ebp - 0xc], 0x45
je 0x11775c4
cmp dword [esi + 0x2d48], 1
je 0x11775c4
lea eax, [ebp - 0x1dbc]
mov edx, eax
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x11775a6
sub eax, edx
add edi, 0xfffffffe
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x11775b6
jmp 0x11775ee
lea edx, [ebp - 0x1dbc]
push edx
call fcn.01168ee0
mov edx, eax
mov cx, word [eax]
add eax, 2
test cx, cx
jne 0x11775d2
sub eax, edx
add edi, 0xfffffffe
mov cx, word [edi + 2]
add edi, 2
test cx, cx
jne 0x11775e2
mov ecx, eax
shr ecx, 2
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
cmp byte [ebp + 0x13], 0
rep movsb byte es:[edi], byte [esi]
je 0x117763e
mov ecx, dword [ebp - 8]
cmp word [ecx + 0x11e0], 0x5f
jne 0x117763e
movzx eax, word [ecx + 0x11e2]
push eax
call fcn.01165790
test al, al
je 0x117763e
mov edx, 0x3a
mov word [ecx + 0x11e0], dx
jmp 0x117763e
lea eax, [ecx + 0x11de]
xor ecx, ecx
mov dword [ebp - 0x14], eax
mov word [eax], cx
cmp byte [ebp + 0xf], 0
jne 0x1177651
test byte [ebx + 0x4f80], 1
mov byte [ebp + 0x13], 1
je 0x1177655
mov byte [ebp + 0x13], 0
mov eax, dword [ebp + 8]
cmp byte [eax + 0x2d44], 0
jne 0x117766a
cmp byte [eax + 0x2d45], 0
je 0x11776e4
mov al, byte [ebp - 0xc]
cmp al, 0x45
je 0x1177675
cmp al, 0x58
jne 0x11776e4
mov ecx, dword [ebp - 0x18]
xor eax, eax
push eax
lea edx, [ebp - 0x325c]
mov dword [ebp - 0x2648], eax
mov dword [ebp - 0x2624], eax
mov dword [ebp - 0x2600], eax
mov eax, dword [ebp - 0x1c]
push edx
push eax
push ecx
call fcn.01171570
test al, al
je 0x11776d4
lea edx, [ebx + 0x5bbc]
push edx
lea ecx, [ebp - 0x2648]
call fcn.01165f30
test al, al
je 0x11776e4
cmp byte [ebp - 0x264c], 0
je 0x11776e0
mov eax, dword [ebp - 8]
push eax
lea ecx, [ebp - 0x2648]
call fcn.01165df0
test al, al
jmp 0x11776de
mov ecx, dword [ebp + 8]
cmp byte [ecx + 0x2d44], 0
je 0x11776e4
mov byte [ebp + 0x13], 0
test byte [ebx + 0x4f80], 4
je 0x1177726
mov edx, dword [ebp - 8]
cmp word [edx + 0xcdc], 0
jne 0x1177726
cmp dword [0x1182db0], 0
jne 0x117770d
mov dword [0x1182db0], 1
mov edi, dword [ebp + 8]
inc dword [0x1182db4]
mov dword [edi + 0x42c0], 0x16
mov byte [ebp + 0x13], 0
jmp 0x1177729
mov edi, dword [ebp + 8]
cmp byte [edi + 0x36bc], 0
mov esi, dword [ebp - 0x18]
lea eax, [edi + 0x36bc]
je 0x1177766
push 0x3ff
push eax
push esi
call dword [sym.imp.msvcrt.dll_strncpy]
mov ecx, dword [ebp - 0x14]
xor eax, eax
mov byte [esi + 0x3ff], 0
add esp, 0xc
mov word [ecx], ax
cmp dword [edi + 0x42bc], 2
je 0x1177766
mov byte [ebp + 0x13], al
cmp word [edi + 0x3abc], 0
lea eax, [edi + 0x3abc]
je 0x11777a4
mov edx, dword [ebp - 0x14]
push 0x3ff
push eax
push edx
call dword [sym.imp.msvcrt.dll_wcsncpy]
mov eax, dword [ebp - 0x14]
xor ecx, ecx
add esp, 0xc
mov word [eax + 0x7fe], cx
cmp dword [edi + 0x42bc], 2
mov dword [ebp - 0x1c], eax
je 0x11777a4
mov byte [ebp + 0x13], cl
mov al, byte [ebx + 0x4f98]
cmp al, 0x24
je 0x11777e2
cmp al, 0x1d
je 0x11777e2
cmp byte [ebx + 0x4f99], 0x30
je 0x11777e2
cmp dword [0x1182db0], 0
mov byte [ebp + 0x13], 0
jne 0x11777d2
mov dword [0x1182db0], 1
inc dword [0x1182db4]
mov dword [edi + 0x42c0], 0xe
lea ecx, [ebp - 0x11bc]
call fcn.01165570
mov dl, byte [ebx + 0x4f80]
and dl, 0xe0
cmp dl, 0xe0
jne 0x1177864
cmp byte [ebp + 0x13], 0
je 0x1177833
mov al, byte [ebp - 0xc]
cmp al, 0x50
je 0x1177833
cmp al, 0x45
je 0x1177833
mov ecx, 1
cmp dword [edi + 0x2d48], ecx
je 0x1177833
cmp byte [ebp + 0xf], 0
je 0x1177849
lea eax, [ebp - 0x59c]
push eax
push 0x1002536
call fcn.01027120
add esp, 8
lea ecx, [ebp - 0x11bc]
call fcn.0116cba0
pop edi
pop esi
mov al, 1
pop ebx
mov esp, ebp
pop ebp
ret 0x10
mov eax, dword [ebp - 8]
add dword [eax + 0xcc], ecx
cmp byte [edi + 0x2de2], 0
je 0x1177833
lea ecx, [ebp - 0x59c]
push ecx
jmp 0x1177826
mov cl, byte [edi + 0x2de2]
test cl, cl
je 0x1177878
cmp byte [ebp + 0x13], 0
je 0x1177878
mov byte [ebp - 2], 1
mov al, byte [ebp - 0xc]
cmp al, 0x45
je 0x1177887
cmp al, 0x58
jne 0x117797d
cmp byte [ebp + 0x13], 0
je 0x1177988
test cl, cl
jne 0x117797d
mov edx, dword [ebx + 0x4f94]
mov eax, dword [ebx + 0x5c5c]
mov ecx, dword [ebx + 0x5c58]
push edx
push eax
mov eax, dword [edi + 0x2d24]
push ecx
mov ecx, dword [ebp - 0x1c]
lea edx, [ebp - 1]
push edx
push eax
push ecx
push esi
lea edx, [ebp - 0x11bc]
push edx
push edi
call fcn.01174600
test al, al
jne 0x117797a
mov byte [ebp + 0x13], al
cmp byte [ebp - 1], al
jne 0x1177985
inc dword [0x1182db4]
mov dword [0x1182db0], 9
push esi
mov dword [edi + 0x42c0], 0x10
call fcn.01169410
test al, al
jne 0x1177985
push 0x3ff
lea eax, [ebp - 0x15bc]
push esi
push eax
call dword [sym.imp.msvcrt.dll_strncpy]
add esp, 0xc
push 1
push esi
mov byte [ebp - 0x11bd], 0
call fcn.011694c0
test esi, esi
je 0x117793d
cmp byte [esi], 0
je 0x117793d
push 1
push esi
call fcn.0116cc50
mov ecx, dword [ebx + 0x4f94]
mov edx, dword [ebx + 0x5c5c]
mov eax, dword [ebx + 0x5c58]
push ecx
push edx
mov edx, dword [edi + 0x2d24]
push eax
lea ecx, [ebp - 1]
push ecx
push edx
push 0
push esi
lea eax, [ebp - 0x11bc]
push eax
push edi
call fcn.01174600
test al, al
je 0x1177985
mov al, byte [ebp - 0xc]
mov byte [ebp + 0x13], 1
jmp 0x11779ac
mov al, byte [ebp - 0xc]
cmp byte [ebp + 0x13], 0
jne 0x11779ac
jmp 0x1177988
mov al, byte [ebp - 0xc]
cmp byte [ebx + 0x7659], 0
je 0x117799f
mov byte [ebp + 0xf], 1
mov byte [ebp - 2], 1
mov byte [ebp + 0x13], 1
jmp 0x11779f1
cmp byte [ebp + 0x13], 0
je 0x1177de0
mov edi, dword [ebp + 8]
cmp byte [ebp + 0xf], 0
jne 0x11779f1
cmp byte [ebp - 2], 0
jne 0x11779e8
cmp al, 0x50
je 0x11779e8
lea ecx, [ebp - 0x11bc]
call fcn.01165600
test al, al
je 0x11779e5
mov ecx, dword [ebp - 0x14]
push ecx
push esi
lea edx, [ebx + 0x418]
push edx
add ebx, 0x17
push ebx
mov ecx, 0x1182db0
call fcn.011687c0
mov al, byte [ebp - 0xc]
mov ecx, dword [ebp - 8]
inc dword [ecx + 0xcc]
mov ecx, dword [ebp - 8]
inc dword [ecx + 0xd0]
cmp al, 0x49
je 0x1177a38
cmp byte [ebp + 0xf], 0
je 0x1177a0d
lea eax, [ebp - 0x59c]
push eax
jmp 0x1177a2b
cmp byte [edi + 0x2de2], 0
jne 0x1177acb
cmp al, 0x45
je 0x1177a2a
cmp al, 0x54
je 0x1177acb
cmp al, 0x58
jne 0x1177a38
push esi
push 0x1002536
call fcn.01027120
add esp, 8
cmp byte [edi + 0x2d34], 0
jne 0x1177a4e
push 0x1026a04
call fcn.01027120
add esp, 4
mov eax, dword [ebp - 8]
xor esi, esi
xor edx, edx
mov dword [eax + 0x90], esi
mov dword [eax + 0x94], esi
mov dword [eax + 0x98], esi
mov dword [eax + 0x9c], esi
cmp byte [ebx + 0x7658], dl
mov dword [eax + 0xb8], 0xffffffff
setne dl
add eax, 0xcdc
dec edx
mov dword [eax - 0xc28], edx
cmp byte [ebx + 0x4f8c], 0
jne 0x1177ad7
push 0x80
lea ecx, [ebp - 0x9c]
push ecx
push eax
call dword [sym.imp.USER32.dll_CharToOemBuffW]
push 0x80
lea edx, [ebp - 0x19c]
push edx
lea eax, [ebp - 0x9c]
push eax
call fcn.01166010
xor ecx, ecx
mov word [ebp - 0x9e], cx
jmp 0x1177aef
lea ecx, [ebp - 0x59c]
push ecx
jmp 0x1177a2b
lea edx, [ebp - 0x19c]
sub edx, eax
nop
movzx ecx, word [eax]
mov word [edx + eax], cx
add eax, 2
cmp cx, si
jne 0x1177ae0
test byte [ebx + 0x4f80], 4
je 0x1177b01
movzx eax, byte [ebx + 0x4f98]
jmp 0x1177b03
xor eax, eax
movzx edx, word [ebp - 0x19c]
mov esi, dword [ebp - 8]
neg edx
sbb edx, edx
and edx, eax
mov dword [esi + 0xc0], edx
mov eax, dword [ebx + 0x5c50]
mov dword [esi + 0x48], eax
mov ecx, dword [ebx + 0x5c54]
lea edx, [ebp - 0x11bc]
push edx
mov dword [esi + 0x4c], ecx
lea edi, [esi + 0x28]
push ebx
mov ecx, edi
call fcn.01165be0
mov al, byte [ebp - 2]
mov cl, byte [ebp + 0xf]
mov byte [esi + 0x51], al
mov byte [esi + 0x52], cl
test al, al
jne 0x1177bbe
cmp byte [ebx + 0x7668], al
jne 0x1177bbe
mov eax, dword [ebx + 0x5c50]
mov ecx, dword [ebx + 0x5c54]
mov edx, dword [ebx + 0x5c5c]
mov esi, dword [ebx + 0x5c58]
shld ecx, eax, 0xb
shl eax, 0xb
cmp ecx, edx
jl 0x1177bbe
jg 0x1177b7e
cmp eax, esi
jbe 0x1177bbe
test edx, edx
jl 0x1177ba5
jg 0x1177b8c
cmp esi, 0x5f5e100
jb 0x1177ba5
mov ecx, ebx
call fcn.0116cbd0
cmp edx, dword [ebx + 0x5c54]
jl 0x1177bbe
jg 0x1177ba5
cmp eax, dword [ebx + 0x5c50]
jbe 0x1177bbe
mov edx, dword [ebx + 0x5c5c]
mov eax, dword [ebx + 0x5c58]
push edx
push eax
lea ecx, [ebp - 0x11bc]
call fcn.01172bd0
mov esi, dword [ebp + 8]
cmp byte [esi + 0x2d80], 0
sete cl
test byte [ebx + 0x4f80], 1
mov byte [ebp - 0x11a9], cl
jne 0x1177bf7
cmp byte [ebx + 0x4f99], 0x30
jne 0x1177c31
mov edx, dword [ebx + 0x5c5c]
mov eax, dword [ebx + 0x5c58]
push edx
push eax
push edi
call fcn.01175cd0
mov edi, dword [ebp - 8]
mov ecx, ebx
call fcn.01173280
mov al, byte [ebx + 0x7658]
test al, al
je 0x1177c1d
mov ecx, dword [edi + 0xb4]
cmp ecx, dword [ebx + 0x4f90]
je 0x1177c2d
test al, al
jne 0x1177c71
mov edx, dword [ebx + 0x4f90]
not edx
cmp dword [edi + 0xb4], edx
jne 0x1177c71
mov al, 1
jmp 0x1177c73
mov ecx, dword [ebx + 0x5c5c]
mov edx, dword [ebx + 0x5c58]
mov edi, dword [ebp - 8]
push ecx
mov ecx, dword [edi + 0xc8]
push edx
call fcn.01165140
mov al, byte [ebx + 0x4f80]
movzx edx, byte [ebx + 0x4f98]
shr al, 4
and al, 1
movzx ecx, al
push ecx
mov ecx, dword [edi + 0xc8]
push edx
call fcn.01177020
jmp 0x1177bfa
xor al, al
test byte [ebx + 0x4f80], 0x10
jne 0x1177c85
mov byte [edi + 0xdb], 0
jmp 0x1177cad
cmp byte [ebx + 0x4f99], 0x30
je 0x1177cad
cmp dword [ebx + 0x5c5c], 0
jl 0x1177cad
jg 0x1177ca2
cmp dword [ebx + 0x5c58], 0
jbe 0x1177cad
test al, al
je 0x1177cad
mov byte [edi + 0xdb], 1
cmp byte [ebp + 0xf], 0
mov byte [ebp + 0xb], 0
jne 0x1177d0e
test al, al
je 0x1177cee
mov al, byte [ebp - 0xc]
cmp al, 0x50
je 0x1177d1b
cmp al, 0x49
je 0x1177d1b
cmp byte [esi + 0x2d34], 0
mov eax, 0x100fdd8
jne 0x1177cd9
mov eax, 0x1026a20
push 0x1002536
push eax
push 0x1026a18
call fcn.01027120
add esp, 0xc
jmp 0x1177d1b
inc dword [0x1182db4]
mov dword [0x1182db0], 3
mov byte [ebp + 0xb], 1
mov dword [esi + 0x42c0], 0xc
jmp 0x1177d1b
push 0x1026a0c
call fcn.01027120
add esp, 4
cmp byte [ebp - 2], 0
jne 0x1177de0
mov al, byte [ebp - 0xc]
cmp al, 0x58
je 0x1177d34
cmp al, 0x45
jne 0x1177de0
cmp byte [esi + 0x2d40], 0
je 0x1177d44
and dword [ebx + 0x4f9c], 0xffffffdf
cmp byte [ebp + 0xb], 0
je 0x1177d64
cmp byte [esi + 0x2d80], 0
je 0x1177de0
mov eax, dword [ebp - 0x11b8]
push eax
call dword [sym.imp.KERNEL32.DLL_SetEndOfFile]
cmp dword [esi + 0x32b4], 0
jne 0x1177d71
xor edx, edx
jmp 0x1177d77
lea edx, [ebx + 0x5c04]
cmp dword [esi + 0x32b0], 0
jne 0x1177d84
xor ecx, ecx
jmp 0x1177d8a
lea ecx, [ebx + 0x5be0]
cmp dword [esi + 0x32ac], 0
jne 0x1177d97
xor eax, eax
jmp 0x1177d9d
lea eax, [ebx + 0x5bbc]
push edx
push ecx
push eax
lea ecx, [ebp - 0x11bc]
call fcn.01168d20
lea ecx, [ebp - 0x11bc]
call fcn.01168ae0
cmp byte [esi + 0x2d87], 0
jne 0x1177dd9
mov ecx, dword [ebx + 0x4f9c]
push ecx
lea edx, [ebp - 0xda4]
push edx
lea eax, [ebp - 0x11a5]
push eax
call fcn.01168de0
mov byte [edi + 0xddd], 1
lea ecx, [ebp - 0x11bc]
call fcn.0116cba0
cmp byte [ebp - 3], 0
je 0x1177dfa
mov eax, dword [ebp - 8]
inc dword [eax + 0xd4]
mov ecx, dword [ebp - 8]
cmp byte [ecx + 0x6f], 0
jne 0x1177e24
cmp byte [ebp + 0x13], 0
jne 0x1177111
cmp byte [ebx + 0x7659], 0
je 0x117710a
cmp byte [ebp + 0xf], 0
jne 0x1177111
pop edi
pop esi
xor al, al
pop ebx
mov esp, ebp
pop ebp
ret 0x10