Function at 0x408c40
Capabilities:
Get file size
Read file on windows
Write file on windows

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x1ac
mov eax, dword [0x438080]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov ecx, dword [0x43954c]
mov eax, dword [0x439548]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [ebp - 0x1aa], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [ebp - 0x1a9], al
mov dword [ebp - 0x1b0], 0xd4bf991b
mov eax, dword [ebp - 0x1b0]
mov dword [ebp - 0x1b4], eax
sub eax, 0x80224649
je 0x413127
jmp 0x408cb3
mov eax, dword [ebp - 0x1b4]
sub eax, 0x8046ef34
je 0x40ec5f
jmp 0x408cc9
mov eax, dword [ebp - 0x1b4]
sub eax, 0x80b43b54
je 0x412ddc
jmp 0x408cdf
mov eax, dword [ebp - 0x1b4]
sub eax, 0x80b8972d
je 0x411497
jmp 0x408cf5
mov eax, dword [ebp - 0x1b4]
sub eax, 0x80e0b900
je 0x413823
jmp 0x408d0b
mov eax, dword [ebp - 0x1b4]
sub eax, 0x80e5d3b9
je 0x40efe2
jmp 0x408d21
mov eax, dword [ebp - 0x1b4]
sub eax, 0x80e9991c
je 0x40f271
jmp 0x408d37
mov eax, dword [ebp - 0x1b4]
sub eax, 0x810288e7
je 0x40e1c7
jmp 0x408d4d
mov eax, dword [ebp - 0x1b4]
sub eax, 0x8121dba5
je 0x416530
jmp 0x408d63
mov eax, dword [ebp - 0x1b4]
sub eax, 0x814b6c8d
je 0x411956
jmp 0x408d79
mov eax, dword [ebp - 0x1b4]
sub eax, 0x8155670a
je 0x416a40
jmp 0x408d8f
mov eax, dword [ebp - 0x1b4]
sub eax, 0x822f6204
je 0x414cad
jmp 0x408da5
mov eax, dword [ebp - 0x1b4]
sub eax, 0x8231f95a
je 0x410730
jmp 0x408dbb
mov eax, dword [ebp - 0x1b4]
sub eax, 0x826de56f
je 0x40f988
jmp 0x408dd1
mov eax, dword [ebp - 0x1b4]
sub eax, 0x83df5065
je 0x40e688
jmp 0x408de7
mov eax, dword [ebp - 0x1b4]
sub eax, 0x84b8e982
je 0x40e3de
jmp 0x408dfd
mov eax, dword [ebp - 0x1b4]
sub eax, 0x85748743
je 0x41394a
jmp 0x408e13
mov eax, dword [ebp - 0x1b4]
sub eax, 0x86347c29
je 0x40f031
jmp 0x408e29
mov eax, dword [ebp - 0x1b4]
sub eax, 0x86c0fc22
je 0x411664
jmp 0x408e3f
mov eax, dword [ebp - 0x1b4]
sub eax, 0x86e653ea
je 0x4111aa
jmp 0x408e55
mov eax, dword [ebp - 0x1b4]
sub eax, 0x87952bb0
je 0x4163eb
jmp 0x408e6b
mov eax, dword [ebp - 0x1b4]
sub eax, 0x87f1b546
je 0x415902
jmp 0x408e81
mov eax, dword [ebp - 0x1b4]
sub eax, 0x8850c200
je 0x410234
jmp 0x408e97
mov eax, dword [ebp - 0x1b4]
sub eax, 0x88632c43
je 0x4159e3
jmp 0x408ead
mov eax, dword [ebp - 0x1b4]
sub eax, 0x88c6a335
je 0x416b77
jmp 0x408ec3
mov eax, dword [ebp - 0x1b4]
sub eax, 0x88d56164
je 0x410327
jmp 0x408ed9
mov eax, dword [ebp - 0x1b4]
sub eax, 0x88fc76e7
je 0x4109d0
jmp 0x408eef
mov eax, dword [ebp - 0x1b4]
sub eax, 0x8907a8e3
je 0x411300
jmp 0x408f05
mov eax, dword [ebp - 0x1b4]
sub eax, 0x896f2158
je 0x413e03
jmp 0x408f1b
mov eax, dword [ebp - 0x1b4]
sub eax, 0x8986836d
je 0x413e6c
jmp 0x408f31
mov eax, dword [ebp - 0x1b4]
sub eax, 0x8989de8a
je 0x4122af
jmp 0x408f47
mov eax, dword [ebp - 0x1b4]
sub eax, 0x89ca1f22
je 0x40eee3
jmp 0x408f5d
mov eax, dword [ebp - 0x1b4]
sub eax, 0x89df2309
je 0x413c4d
jmp 0x408f73
mov eax, dword [ebp - 0x1b4]
sub eax, 0x8a222af5
je 0x4145f3
jmp 0x408f89
mov eax, dword [ebp - 0x1b4]
sub eax, 0x8a37ab32
je 0x40dcfd
jmp 0x408f9f
mov eax, dword [ebp - 0x1b4]
sub eax, 0x8a8e4420
je 0x413364
jmp 0x408fb5
mov eax, dword [ebp - 0x1b4]
sub eax, 0x8aff0601
je 0x40e1e4
jmp 0x408fcb
mov eax, dword [ebp - 0x1b4]
sub eax, 0x8b127ad9
je 0x414c50
jmp 0x408fe1
mov eax, dword [ebp - 0x1b4]
sub eax, 0x8b44a288
je 0x40dc27
jmp 0x408ff7
mov eax, dword [ebp - 0x1b4]
sub eax, 0x8bb78bf6
je 0x40db11
jmp 0x40900d
mov eax, dword [ebp - 0x1b4]
sub eax, 0x8c86ad6b
je 0x40e1b8
jmp 0x409023
mov eax, dword [ebp - 0x1b4]
sub eax, 0x8ccce2fb
je 0x41609c
jmp 0x409039
mov eax, dword [ebp - 0x1b4]
sub eax, 0x8d347b1d
je 0x414f92
jmp 0x40904f
mov eax, dword [ebp - 0x1b4]
sub eax, 0x8d6ebc10
je 0x416dae
jmp 0x409065
mov eax, dword [ebp - 0x1b4]
sub eax, 0x8d7fbeb8
je 0x414c89
jmp 0x40907b
mov eax, dword [ebp - 0x1b4]
sub eax, 0x8d9925cd
je 0x414992
jmp 0x409091
mov eax, dword [ebp - 0x1b4]
sub eax, 0x8db3c28f
je 0x40d80c
jmp 0x4090a7
mov eax, dword [ebp - 0x1b4]
sub eax, 0x8de371f3
je 0x415758
jmp 0x4090bd
mov eax, dword [ebp - 0x1b4]
sub eax, 0x8e47f9a0
je 0x413657
jmp 0x4090d3
mov eax, dword [ebp - 0x1b4]
sub eax, 0x8e5540b7
je 0x416ccf
jmp 0x4090e9
mov eax, dword [ebp - 0x1b4]
sub eax, 0x8eb484d7
je 0x412740
jmp 0x4090ff
mov eax, dword [ebp - 0x1b4]
sub eax, 0x8f171870
je 0x4136e7
jmp 0x409115
mov eax, dword [ebp - 0x1b4]
sub eax, 0x8f2c950e
je 0x41126c
jmp 0x40912b
mov eax, dword [ebp - 0x1b4]
sub eax, 0x8f797e78
je 0x4133fc
jmp 0x409141
mov eax, dword [ebp - 0x1b4]
sub eax, 0x8fae8f16
je 0x416ac1
jmp 0x409157
mov eax, dword [ebp - 0x1b4]
sub eax, 0x8fb943e9
je 0x413355
jmp 0x40916d
mov eax, dword [ebp - 0x1b4]
sub eax, 0x8fd3ff12
je 0x416a73
jmp 0x409183
mov eax, dword [ebp - 0x1b4]
sub eax, 0x8fd550ea
je 0x41291f
jmp 0x409199
mov eax, dword [ebp - 0x1b4]
sub eax, 0x906680c3
je 0x412e0a
jmp 0x4091af
mov eax, dword [ebp - 0x1b4]
sub eax, 0x909f456b
je 0x4104be
jmp 0x4091c5
mov eax, dword [ebp - 0x1b4]
sub eax, 0x90a72b3b
je 0x414131
jmp 0x4091db
mov eax, dword [ebp - 0x1b4]
sub eax, 0x90cae7b7
je 0x410787
jmp 0x4091f1
mov eax, dword [ebp - 0x1b4]
sub eax, 0x913e3fa0
je 0x413b05
jmp 0x409207
mov eax, dword [ebp - 0x1b4]
sub eax, 0x9219906e
je 0x4163fa
jmp 0x40921d
mov eax, dword [ebp - 0x1b4]
sub eax, 0x92582c18
je 0x4168c2
mov eax, dword [ebp - 0x1a0]
mov dword [eax], 0xefb8ec4
mov dword [ebp - 0x1b0], 0x9474d18
jmp 0x41709a
mov dword [ebp - 0x1b0], 0x8a37ab32
jmp 0x41709a
mov ecx, dword [0x43954c]
mov eax, dword [0x439548]
mov edx, ecx
sub edx, 0x4725e6c7
sub edx, 1
add edx, 0x4725e6c7
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0xc3d40add
mov ecx, 0xc2eefa4f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x41709a
mov dword [ebp - 0x1b0], 0xf3fed2ba
jmp 0x41709a
mov dword [ebp - 0x1b0], 0x5c98c94a
jmp 0x41709a
mov eax, dword [ebp - 0x198]
mov eax, dword [eax]
mov dword [ebp - 0xe8], eax
mov dword [ebp - 0x1b0], 0x8aff0601
jmp 0x41709a
mov edx, dword [ebp - 0xe8]
mov eax, 0x7aefe8f
mov ecx, 0xbeeab423
cmp edx, 0xefb8eeb
cmovle eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x41709a
mov eax, dword [ebp - 0x194]
mov byte [eax], 1
mov dword [ebp - 0x1b0], 0xe50ac5d1
jmp 0x41709a
mov eax, dword [ebp - 0x190]
mov dword [eax], 0xefb8ecf
mov eax, dword [ebp - 0x190]
cmp dword [eax], 0xefb8f0d
setg al
and al, 1
mov byte [ebp - 0xdd], al
mov dword [ebp - 0x1b0], 0x60a7388b
jmp 0x41709a
mov dl, 1
mov eax, 0xe5b3d15e
mov ecx, 0x51711da0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x41709a
mov dword [ebp - 0x1b0], 0xa7d082aa
jmp 0x41709a
mov eax, dword [ebp - 0x188]
mov byte [eax], 0
mov dword [ebp - 0x1b0], 0xb07c0916
jmp 0x41709a
mov dword [ebp - 0x1b0], 0x9473aa58
jmp 0x41709a
mov eax, dword [ebp - 0x184]
mov byte [eax], 0
mov eax, dword [ebp - 0x184]
mov al, byte [eax]
mov byte [ebp - 0xd3], al
mov dword [ebp - 0x1b0], 0x7a71e4ce
jmp 0x41709a
mov dword [ebp - 0x1b0], 0x79f83200
jmp 0x41709a
mov ecx, dword [0x43954c]
mov eax, dword [0x439548]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0x92582c18
mov ecx, 0xf217c1ac
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x41709a
mov ecx, dword [0x43954c]
mov eax, dword [0x439548]
mov edx, ecx
sub edx, 0x6d25c8db
sub edx, 1
add edx, 0x6d25c8db
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0x27fdc77c
mov ecx, 0x7680bb4e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x41709a
mov eax, dword [0x43954c]
mov ecx, dword [0x439548]
xor esi, esi
sub esi, 1
mov edx, eax
add edx, esi
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xf2532f48
mov ecx, 0x7c9bd1ab
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x41709a
mov eax, dword [ebp - 0x174]
mov ecx, dword [ebp - 0xc0]
mov dword [eax], ecx
mov eax, dword [0x43954c]
mov ecx, dword [0x439548]
xor esi, esi
sub esi, 1
mov edx, eax
add edx, esi
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x7efd78c5
mov ecx, 0x90cae7b7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x41709a
mov dword [ebp - 0x1b0], 0xae83a636
jmp 0x41709a
mov ecx, dword [0x43954c]
mov eax, dword [0x439548]
mov edx, ecx
sub edx, 0xca73baec
sub edx, 1
add edx, 0xca73baec
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0x52b413d1
mov ecx, 0x528a83c6
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x41709a
mov dword [ebp - 0x1b0], 0x7300d097
jmp 0x41709a
mov eax, dword [ebp - 0x168]
cmp dword [eax], 0xefb8eed
setle al
and al, 1
mov byte [ebp - 0xad], al
mov dword [ebp - 0x1b0], 0x4a8141a8
jmp 0x41709a
mov ecx, dword [0x43954c]
mov eax, dword [0x439548]
mov edx, ecx
add edx, 0xf2b01fc
sub edx, 1
sub edx, 0xf2b01fc
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0x9f6a3d35
mov ecx, 0x6baff1ba
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x41709a
mov eax, dword [ebp - 0x168]
mov dword [eax], 0
mov dword [ebp - 0x1b0], 0x43f784e9
jmp 0x41709a
mov dword [ebp - 0x1b0], 0x749ecd7e
jmp 0x41709a
mov eax, dword [ebp - 0x160]
mov dl, byte [eax]
mov eax, 0xcfc93dc7
mov ecx, 0xdf306de9
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x41709a
mov ecx, dword [0x43954c]
mov eax, dword [0x439548]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0x9f5a597a
mov ecx, 0xd56355c7
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x41709a
mov eax, dword [ebp - 0x154]
mov byte [eax], 0
mov dword [ebp - 0x1b0], 0x1062d6d4
jmp 0x41709a
mov dword [ebp - 0x1b0], 0x5f60db8a
jmp 0x41709a
mov eax, dword [ebp - 0x150]
mov ecx, dword [eax]
sub ecx, 0xc97012d4
add ecx, 1
add ecx, 0xc97012d4
mov eax, dword [ebp - 0x150]
mov dword [eax], ecx
mov dword [ebp - 0x1b0], 0x906680c3
jmp 0x41709a
mov dword [ebp - 0x1b0], 0x57a92ec
jmp 0x41709a
mov eax, dword [ebp - 0x148]
mov byte [eax], 0
mov eax, dword [ebp - 0x148]
mov al, byte [eax]
and al, 1
mov byte [ebp - 0x85], al
mov dword [ebp - 0x1b0], 0xa2137f6
jmp 0x41709a
mov dword [ebp - 0x1b0], 0x8a8e4420
jmp 0x41709a
mov dword [ebp - 0x1b0], 0x1f32bddc
jmp 0x41709a
mov eax, dword [ebp - 0x84]
cmp eax, 0xefb8f15
setg al
and al, 1
mov byte [ebp - 0x7d], al
mov ecx, dword [0x43954c]
mov eax, dword [0x439548]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0x38d33da8
mov ecx, 0x5c314d5e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x41709a
mov ecx, dword [ebp - 0x78]
add ecx, 0xcaaddae9
add ecx, 1
sub ecx, 0xcaaddae9
mov eax, dword [ebp - 0x144]
mov dword [eax], ecx
mov ecx, dword [0x43954c]
mov eax, dword [0x439548]
mov edx, ecx
sub edx, 0x68884724
sub edx, 1
add edx, 0x68884724
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0x737a9070
mov ecx, 0x8f171870
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x41709a
mov dword [ebp - 0x1b0], 0xb377122e
jmp 0x41709a
mov dword [ebp - 0x1b0], 0x26d4ef23
jmp 0x41709a
mov eax, dword [ebp - 0x140]
mov dword [eax], 0
mov dword [ebp - 0x1b0], 0x7c8a0018
jmp 0x41709a
mov dword [ebp - 0x1b0], 0xc82da5fd
jmp 0x41709a
mov eax, dword [ebp - 0x138]
mov byte [eax], 1
mov dword [ebp - 0x1b0], 0x1ce76c86
jmp 0x41709a
mov eax, dword [ebp - 0x138]
mov byte [eax], 1
mov eax, dword [0x43954c]
mov ecx, dword [0x439548]
mov edx, eax
add edx, 0xfebdf825
sub edx, 1
sub edx, 0xfebdf825
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x723d445b
mov ecx, 0xebe2d327
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x41709a
mov eax, dword [0x43954c]
mov ecx, dword [0x439548]
xor esi, esi
sub esi, 1
mov edx, eax
add edx, esi
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xca3de9af
mov ecx, 0x99923145
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x41709a
mov eax, dword [ebp - 0x134]
mov byte [eax], 0
mov dword [ebp - 0x1b0], 0xd99eb2f6
jmp 0x41709a
mov eax, dword [ebp - 0x130]
mov byte [eax], 1
mov eax, dword [0x43954c]
mov ecx, dword [0x439548]
mov edx, eax
sub edx, 0xdcee988a
sub edx, 1
add edx, 0xdcee988a
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x44ae3f54
mov ecx, 0xa90c5f2d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x41709a
mov eax, dword [ebp - 0x12c]
mov eax, dword [eax]
mov dword [ebp - 0x60], eax
mov dword [ebp - 0x1b0], 0x4b6bb858
jmp 0x41709a
mov dword [ebp - 0x1b0], 0xb5d52f8c
jmp 0x41709a
mov edx, dword [ebp - 0x128]
mov eax, 0x9d165331
mov ecx, 0x822f6204
cmp dword [edx], 0xefb8ec7
cmovg eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x41709a
mov ecx, dword [0x43954c]
mov eax, dword [0x439548]
mov edx, ecx
add edx, 0x5d63a8c6
sub edx, 1
sub edx, 0x5d63a8c6
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0xc49cad5a
mov ecx, 0x9ce460a2
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x41709a
mov dword [ebp - 0x1b0], 0x962b6163
jmp 0x41709a
mov ecx, dword [0x43954c]
mov eax, dword [0x439548]
mov edx, ecx
sub edx, 0x72c8131b
sub edx, 1
add edx, 0x72c8131b
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0x3c8eb04f
mov ecx, 0x3a3c957e
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x41709a
mov eax, dword [0x43954c]
mov ecx, dword [0x439548]
mov edx, eax
add edx, 0x3460b543
sub edx, 1
sub edx, 0x3460b543
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x5815acff
mov ecx, 0x9f515853
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x41709a
mov edx, dword [ebp - 0x38]
mov eax, 0x5290791f
mov ecx, 0x527e185
cmp edx, 0
cmove eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x41709a
mov eax, dword [ebp - 0x124]
add eax, 0x10c
sub esp, 4
mov dword [esp], eax
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov ecx, eax
mov eax, dword [ebp - 0x108]
mov dword [eax], ecx
mov eax, dword [ebp - 0x108]
mov eax, dword [eax]
mov dword [ebp - 0x24], eax
mov eax, dword [0x43954c]
mov ecx, dword [0x439548]
xor esi, esi
sub esi, 1
mov edx, eax
add edx, esi
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x749408bd
mov ecx, 0x281fbc65
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x41709a
mov dword [ebp - 0x1b0], 0x9219906e
jmp 0x41709a
mov ecx, dword [0x43954c]
mov eax, dword [0x439548]
mov edx, ecx
sub edx, 0xbc5e9d33
sub edx, 1
add edx, 0xbc5e9d33
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0x6cee9542
mov ecx, 0xc334e536
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1b0], eax
jmp 0x41709a
mov dword [ebp - 0x1b0], 0x981417d6
jmp 0x41709a
mov eax, dword [ebp - 0x164]
mov dword [eax], 0
mov dword [ebp - 0x1b0], 0x44eb51b3
jmp 0x41709a
mov dword [ebp - 0x1b0], 0x2e424b04
jmp 0x41709a
mov eax, dword [ebp - 0xa4]
mov dword [ebp - 0x1b0], 0xcc44555d
jmp 0x41709a
mov eax, dword [ebp - 0x154]
mov byte [eax], 1
mov dword [ebp - 0x1b0], 0x38bbeafe
jmp 0x41709a
mov eax, dword [ebp - 0x144]
mov dword [eax], 0
mov dword [ebp - 0x1b0], 0x509c62b8
jmp 0x41709a
mov eax, dword [ebp - 0x134]
mov byte [eax], 0
mov dword [ebp - 0x1b0], 0xaabd046a
jmp 0x41709a
jmp 0x408c97