Function at 0x40aa80
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, 0x1bc
mov eax, dword [0x438080]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov ecx, dword [0x439564]
mov eax, dword [0x439560]
mov edx, ecx
add edx, 0xcbd71de4
sub edx, 1
sub edx, 0xcbd71de4
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [ebp - 0x1ba], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [ebp - 0x1b9], al
mov dword [ebp - 0x1c0], 0xbf7e6609
mov eax, dword [ebp - 0x1c0]
mov dword [ebp - 0x1c4], eax
sub eax, 0x80690c14
je 0x4110d3
jmp 0x40aafb
mov eax, dword [ebp - 0x1c4]
sub eax, 0x80c0bc35
je 0x41071e
jmp 0x40ab11
mov eax, dword [ebp - 0x1c4]
sub eax, 0x80f0792b
je 0x40f1c4
jmp 0x40ab27
mov eax, dword [ebp - 0x1c4]
sub eax, 0x8268a78c
je 0x416f1a
jmp 0x40ab3d
mov eax, dword [ebp - 0x1c4]
sub eax, 0x827c9015
je 0x4176c3
jmp 0x40ab53
mov eax, dword [ebp - 0x1c4]
sub eax, 0x8295bf52
je 0x41666f
jmp 0x40ab69
mov eax, dword [ebp - 0x1c4]
sub eax, 0x82967346
je 0x4117ec
jmp 0x40ab7f
mov eax, dword [ebp - 0x1c4]
sub eax, 0x8320d49a
je 0x412010
jmp 0x40ab95
mov eax, dword [ebp - 0x1c4]
sub eax, 0x83946536
je 0x417150
jmp 0x40abab
mov eax, dword [ebp - 0x1c4]
sub eax, 0x839fe0b5
je 0x411940
jmp 0x40abc1
mov eax, dword [ebp - 0x1c4]
sub eax, 0x84328dc8
je 0x416507
jmp 0x40abd7
mov eax, dword [ebp - 0x1c4]
sub eax, 0x844fadc3
je 0x41135a
jmp 0x40abed
mov eax, dword [ebp - 0x1c4]
sub eax, 0x8497d2ad
je 0x41524c
jmp 0x40ac03
mov eax, dword [ebp - 0x1c4]
sub eax, 0x84c2f7e2
je 0x415935
jmp 0x40ac19
mov eax, dword [ebp - 0x1c4]
sub eax, 0x85005320
je 0x4103c6
jmp 0x40ac2f
mov eax, dword [ebp - 0x1c4]
sub eax, 0x853b9213
je 0x40fd21
jmp 0x40ac45
mov eax, dword [ebp - 0x1c4]
sub eax, 0x8596f0c4
je 0x4136b1
jmp 0x40ac5b
mov eax, dword [ebp - 0x1c4]
sub eax, 0x85b8308f
je 0x417072
jmp 0x40ac71
mov eax, dword [ebp - 0x1c4]
sub eax, 0x85f7f528
je 0x416f41
jmp 0x40ac87
mov eax, dword [ebp - 0x1c4]
sub eax, 0x867e813f
je 0x417362
jmp 0x40ac9d
mov eax, dword [ebp - 0x1c4]
sub eax, 0x86c4d949
je 0x4162a0
jmp 0x40acb3
mov eax, dword [ebp - 0x1c4]
sub eax, 0x87e6c698
je 0x410174
jmp 0x40acc9
mov eax, dword [ebp - 0x1c4]
sub eax, 0x8852c900
je 0x40f715
jmp 0x40acdf
mov eax, dword [ebp - 0x1c4]
sub eax, 0x88b7ac89
je 0x417141
jmp 0x40acf5
mov eax, dword [ebp - 0x1c4]
sub eax, 0x88c44210
je 0x413d8c
jmp 0x40ad0b
mov eax, dword [ebp - 0x1c4]
sub eax, 0x8abb78be
je 0x413835
jmp 0x40ad21
mov eax, dword [ebp - 0x1c4]
sub eax, 0x8b1f02c2
je 0x415b27
jmp 0x40ad37
mov eax, dword [ebp - 0x1c4]
sub eax, 0x8b893b08
je 0x414a07
jmp 0x40ad4d
mov eax, dword [ebp - 0x1c4]
sub eax, 0x8bdc8014
je 0x41520d
jmp 0x40ad63
mov eax, dword [ebp - 0x1c4]
sub eax, 0x8c2dd01b
je 0x410dc8
jmp 0x40ad79
mov eax, dword [ebp - 0x1c4]
sub eax, 0x8ca3a108
je 0x41048c
jmp 0x40ad8f
mov eax, dword [ebp - 0x1c4]
sub eax, 0x8ccf3b1b
je 0x414396
jmp 0x40ada5
mov eax, dword [ebp - 0x1c4]
sub eax, 0x8cfac9e1
je 0x414191
jmp 0x40adbb
mov eax, dword [ebp - 0x1c4]
sub eax, 0x8d1bb64d
je 0x40f7aa
jmp 0x40add1
mov eax, dword [ebp - 0x1c4]
sub eax, 0x8d6521a5
je 0x40f3b6
jmp 0x40ade7
mov eax, dword [ebp - 0x1c4]
sub eax, 0x8d78e74d
je 0x410cd0
jmp 0x40adfd
mov eax, dword [ebp - 0x1c4]
sub eax, 0x8d90d303
je 0x4143cc
jmp 0x40ae13
mov eax, dword [ebp - 0x1c4]
sub eax, 0x8d95c40e
je 0x40ea17
jmp 0x40ae29
mov eax, dword [ebp - 0x1c4]
sub eax, 0x8d9ed7e6
je 0x4130d0
jmp 0x40ae3f
mov eax, dword [ebp - 0x1c4]
sub eax, 0x8ec1cbab
je 0x4159d5
jmp 0x40ae55
mov eax, dword [ebp - 0x1c4]
sub eax, 0x8ee1c861
je 0x40ff01
jmp 0x40ae6b
mov eax, dword [ebp - 0x1c4]
sub eax, 0x8f83d424
je 0x41014a
jmp 0x40ae81
mov eax, dword [ebp - 0x1c4]
sub eax, 0x8f8cd8cb
je 0x411440
jmp 0x40ae97
mov eax, dword [ebp - 0x1c4]
sub eax, 0x90237b98
je 0x416812
jmp 0x40aead
mov eax, dword [ebp - 0x1c4]
sub eax, 0x9069f90a
je 0x413ccd
jmp 0x40aec3
mov eax, dword [ebp - 0x1c4]
sub eax, 0x911612f2
je 0x415f09
jmp 0x40aed9
mov eax, dword [ebp - 0x1c4]
sub eax, 0x9180c80e
je 0x412d98
jmp 0x40aeef
mov eax, dword [ebp - 0x1c4]
sub eax, 0x92079786
je 0x412667
jmp 0x40af05
mov eax, dword [ebp - 0x1c4]
sub eax, 0x92303303
je 0x416ef3
jmp 0x40af1b
mov eax, dword [ebp - 0x1c4]
sub eax, 0x92793afe
je 0x40f724
jmp 0x40af31
mov eax, dword [ebp - 0x1c4]
sub eax, 0x9399b556
je 0x4123ff
jmp 0x40af47
mov eax, dword [ebp - 0x1c4]
sub eax, 0x93c1be8f
je 0x4153cf
jmp 0x40af5d
mov eax, dword [ebp - 0x1c4]
sub eax, 0x940c55eb
je 0x410502
jmp 0x40af73
mov eax, dword [ebp - 0x1c4]
sub eax, 0x94355793
je 0x411620
jmp 0x40af89
mov eax, dword [ebp - 0x1c4]
sub eax, 0x94546ed5
je 0x410e90
jmp 0x40af9f
mov eax, dword [ebp - 0x1c4]
sub eax, 0x946d21fb
je 0x4155a2
jmp 0x40afb5
mov eax, dword [ebp - 0x1c4]
sub eax, 0x948358ff
je 0x414b98
jmp 0x40afcb
mov eax, dword [ebp - 0x1c4]
sub eax, 0x94ac963c
je 0x4160a7
jmp 0x40afe1
mov eax, dword [ebp - 0x1c4]
sub eax, 0x94dd57f2
je 0x415afa
jmp 0x40aff7
mov eax, dword [ebp - 0x1c4]
sub eax, 0x95870739
je 0x41289c
jmp 0x40b00d
mov eax, dword [ebp - 0x1c4]
sub eax, 0x95aa7b2a
je 0x416b1d
jmp 0x40b023
mov eax, dword [ebp - 0x1c4]
sub eax, 0x96333e20
je 0x413f83
jmp 0x40b039
mov eax, dword [ebp - 0x1c4]
sub eax, 0x965758d9
je 0x411919
jmp 0x40b04f
mov eax, dword [ebp - 0x1c4]
sub eax, 0x9677b7a3
je 0x40ef3a
jmp 0x40b065
mov eax, dword [ebp - 0x1c4]
sub eax, 0x978054db
je 0x411c55
push eax
mov eax, esp
mov dword [ebp - 0x1b8], eax
push eax
mov eax, esp
mov dword [ebp - 0x1b4], eax
push eax
mov eax, esp
mov dword [ebp - 0x1b0], eax
push eax
mov eax, esp
mov dword [ebp - 0x1ac], eax
push eax
mov eax, esp
mov dword [ebp - 0x1a8], eax
push eax
mov eax, esp
mov dword [ebp - 0x1a4], eax
push eax
mov eax, esp
mov dword [ebp - 0x1a0], eax
push eax
mov eax, esp
mov dword [ebp - 0x19c], eax
push eax
mov eax, esp
mov dword [ebp - 0x198], eax
push eax
mov eax, esp
mov dword [ebp - 0x194], eax
push eax
mov eax, esp
mov dword [ebp - 0x190], eax
push eax
mov eax, esp
mov dword [ebp - 0x18c], eax
push eax
mov eax, esp
mov dword [ebp - 0x188], eax
push eax
mov eax, esp
mov dword [ebp - 0x184], eax
push eax
mov eax, esp
mov dword [ebp - 0x180], eax
push eax
mov eax, esp
mov dword [ebp - 0x17c], eax
push eax
mov eax, esp
mov dword [ebp - 0x178], eax
push eax
mov eax, esp
mov dword [ebp - 0x174], eax
push eax
mov eax, esp
mov dword [ebp - 0x170], eax
push eax
mov eax, esp
mov dword [ebp - 0x16c], eax
push eax
mov eax, esp
mov dword [ebp - 0x168], eax
push eax
mov eax, esp
mov dword [ebp - 0x164], eax
mov ecx, dword [0x439564]
mov eax, dword [0x439560]
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, 0x9c09035b
mov ecx, 0x4223132d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c0], eax
jmp 0x4176d3
mov eax, dword [ebp - 0x1b4]
mov ecx, dword [eax]
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, 1
add eax, ecx
xor ecx, ecx
sub ecx, eax
mov eax, dword [ebp - 0x1b4]
mov dword [eax], ecx
mov dword [ebp - 0x1c0], 0xb125ec1a
jmp 0x4176d3
xor eax, eax
mov dl, al
mov eax, 0xb6f8d858
mov ecx, 0xf3da975f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c0], eax
jmp 0x4176d3
mov eax, dword [ebp - 0x1ac]
mov dword [eax], 0xefb8f16
mov eax, dword [ebp - 0x1ac]
mov eax, dword [eax]
mov dword [ebp - 0x104], eax
mov dword [ebp - 0x1c0], 0xa8a254e2
jmp 0x4176d3
mov dword [ebp - 0x1c0], 0x92793afe
jmp 0x4176d3
mov dword [ebp - 0x1c0], 0x18eda27a
jmp 0x4176d3
mov dword [ebp - 0x1c0], 0xa7927c2b
jmp 0x4176d3
mov eax, dword [0x439564]
mov ecx, dword [0x439560]
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, 0x419f8545
mov ecx, 0x4e0899fa
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c0], eax
jmp 0x4176d3
mov ecx, dword [0x439564]
mov eax, dword [0x439560]
mov edx, ecx
add edx, 0x135a6793
sub edx, 1
sub edx, 0x135a6793
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, 0x4dc62549
mov ecx, 0xf007fc6f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c0], eax
jmp 0x4176d3
mov eax, dword [ebp - 0x19c]
mov dword [eax], 0xefb8f0c
mov dword [ebp - 0x1c0], 0x9c39198c
jmp 0x4176d3
mov eax, dword [ebp - 0x19c]
cmp dword [eax], 0xefb8ee1
setle al
and al, 1
mov byte [ebp - 0xe5], al
mov dword [ebp - 0x1c0], 0x7d759299
jmp 0x4176d3
mov ecx, dword [0x439564]
mov eax, dword [0x439560]
mov edx, ecx
sub edx, 0xf74da724
sub edx, 1
add edx, 0xf74da724
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, 0x4a02d47b
mov ecx, 0xa2eac529
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c0], eax
jmp 0x4176d3
mov ecx, dword [0x439564]
mov eax, dword [0x439560]
mov edx, ecx
sub edx, 0x8fd6e2fe
sub edx, 1
add edx, 0x8fd6e2fe
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, 0x1878fe1a
mov ecx, 0x940c55eb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c0], eax
jmp 0x4176d3
mov eax, dword [ebp - 0x198]
mov eax, dword [eax]
mov dword [ebp - 0xdc], eax
mov ecx, dword [0x439564]
mov eax, dword [0x439560]
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, 0x1878fe1a
mov ecx, 0xf400d7f6
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c0], eax
jmp 0x4176d3
mov dword [ebp - 0x1c0], 0xaed0e447
jmp 0x4176d3
mov eax, dword [ebp - 0x190]
mov dword [eax], 1
mov ecx, dword [0x439564]
mov eax, dword [0x439560]
mov edx, ecx
sub edx, 0xba3d7056
sub edx, 1
add edx, 0xba3d7056
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, 0xb07d3913
mov ecx, 0x43630186
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c0], eax
jmp 0x4176d3
mov eax, dword [ebp - 0x18c]
mov dword [eax], 0xefb8ee5
mov eax, dword [ebp - 0x18c]
mov eax, dword [eax]
mov dword [ebp - 0xcc], eax
mov eax, dword [0x439564]
mov ecx, dword [0x439560]
mov edx, eax
add edx, 0x5d46f03e
sub edx, 1
sub edx, 0x5d46f03e
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, 0xabea0666
mov ecx, 0xb9775204
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c0], eax
jmp 0x4176d3
mov eax, dword [ebp - 0x18c]
cmp dword [eax], 0xefb8ee6
setle al
and al, 1
mov byte [ebp - 0xc5], al
mov dword [ebp - 0x1c0], 0x1f6b77b1
jmp 0x4176d3
mov eax, dword [ebp - 0x188]
mov byte [eax], 1
mov eax, dword [0x439564]
mov ecx, dword [0x439560]
mov edx, eax
sub edx, 0x88168ff1
sub edx, 1
add edx, 0x88168ff1
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, 0xb7f63c31
mov ecx, 0x56ab78b0
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c0], eax
jmp 0x4176d3
mov dword [ebp - 0x1c0], 0x9fc28b35
jmp 0x4176d3
mov dl, 1
mov eax, 0x5938de0e
mov ecx, 0xddf280ea
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c0], eax
jmp 0x4176d3
mov eax, dword [ebp - 0x180]
mov eax, dword [eax]
mov dword [ebp - 0xbc], eax
mov dword [ebp - 0x1c0], 0xc514194
jmp 0x4176d3
mov dword [ebp - 0x1c0], 0xdee2b60e
jmp 0x4176d3
mov dword [ebp - 0x1c0], 0xf64f1a94
jmp 0x4176d3
mov dl, 1
mov eax, 0x7a163027
mov ecx, 0x3d8a570d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c0], eax
jmp 0x4176d3
mov dword [ebp - 0x1c0], 0xf8aec2a1
jmp 0x4176d3
mov dword [ebp - 0x1c0], 0xea99695f
jmp 0x4176d3
mov eax, dword [0x439564]
mov ecx, dword [0x439560]
mov edx, eax
sub edx, 0x326f33b7
sub edx, 1
add edx, 0x326f33b7
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, 0x68231ec2
mov ecx, 0x15ef85bd
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c0], eax
jmp 0x4176d3
mov dword [ebp - 0x1c0], 0xf2fc541a
jmp 0x4176d3
mov dword [ebp - 0x1c0], 0x286c1d61
jmp 0x4176d3
mov eax, dword [ebp - 0x160]
mov eax, dword [eax]
mov dword [ebp - 0x88], eax
mov dword [ebp - 0x1c0], 0x26dfe431
jmp 0x4176d3
mov dword [ebp - 0x1c0], 0xf62f5c5b
jmp 0x4176d3
mov ecx, dword [0x439564]
mov eax, dword [0x439560]
mov edx, ecx
sub edx, 0x83630b44
sub edx, 1
add edx, 0x83630b44
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, 0xa55e8eb
mov ecx, 0xba34f2ef
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c0], eax
jmp 0x4176d3
mov ecx, dword [0x439564]
mov eax, dword [0x439560]
mov edx, ecx
add edx, 0x83138e02
sub edx, 1
sub edx, 0x83138e02
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, 0x1eef655f
mov ecx, 0xe1e38d94
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c0], eax
jmp 0x4176d3
mov dword [ebp - 0x1c0], 0xc1d561d5
jmp 0x4176d3
mov eax, dword [ebp - 0x150]
mov byte [eax], 1
mov dword [ebp - 0x1c0], 0x44c7ff0b
jmp 0x4176d3
mov ecx, dword [0x439564]
mov eax, dword [0x439560]
mov edx, ecx
add edx, 0x1b28434c
sub edx, 1
sub edx, 0x1b28434c
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, 0xa1bf2465
mov ecx, 0xc8984574
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c0], eax
jmp 0x4176d3
mov dword [ebp - 0x1c0], 0x8d90d303
jmp 0x4176d3
mov dword [ebp - 0x1c0], 0x7f6eb96c
jmp 0x4176d3
mov dl, byte [ebp - 0x66]
mov eax, 0xdda99915
mov ecx, 0xccfdfa4c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c0], eax
jmp 0x4176d3
mov ecx, dword [0x439564]
mov eax, dword [0x439560]
mov edx, ecx
sub edx, 0x805e77d3
sub edx, 1
add edx, 0x805e77d3
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, 0x3a360950
mov ecx, 0xf45b75fb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c0], eax
jmp 0x4176d3
mov eax, dword [ebp - 0x13c]
mov byte [eax], 1
mov dword [ebp - 0x1c0], 0x30722fa5
jmp 0x4176d3
xor eax, eax
mov dl, al
mov eax, 0xd1dfad40
mov ecx, 0xe1b4e89
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c0], eax
jmp 0x4176d3
mov eax, dword [0x439564]
mov ecx, dword [0x439560]
mov edx, eax
sub edx, 0xfde2352
sub edx, 1
add edx, 0xfde2352
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, 0x5b03d8fd
mov ecx, 0xec8a7d71
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c0], eax
jmp 0x4176d3
mov dword [ebp - 0x1c0], 0x94c3b8
jmp 0x4176d3
mov eax, dword [ebp - 0x1b8]
mov dword [eax], 1
mov ecx, dword [0x439564]
mov eax, dword [0x439560]
mov edx, ecx
sub edx, 0x32868155
sub edx, 1
add edx, 0x32868155
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, 0x50475022
mov ecx, 0x382a9c27
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c0], eax
jmp 0x4176d3
mov eax, dword [0x439564]
mov ecx, dword [0x439560]
mov edx, eax
add edx, 0xb03936fe
sub edx, 1
sub edx, 0xb03936fe
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, 0xbe380eeb
mov ecx, 0xaf8eb41b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c0], eax
jmp 0x4176d3
mov dword [ebp - 0x1c0], 0x560327e6
jmp 0x4176d3
mov eax, dword [ebp - 0x1b8]
mov dword [eax], 1
mov dword [ebp - 0x1c0], 0x4ed566c8
jmp 0x4176d3
mov dword [ebp - 0x1c0], 0x31a0c72
jmp 0x4176d3
mov eax, dword [0x439564]
mov ecx, dword [0x439560]
mov edx, eax
sub edx, 0xd9b90155
sub edx, 1
add edx, 0xd9b90155
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, 0x20e1d1a5
mov ecx, 0xb677b87b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c0], eax
jmp 0x4176d3
mov dword [ebp - 0x1c0], 0x31a0c72
jmp 0x4176d3
mov dword [ebp - 0x1c0], 0x31a0c72
jmp 0x4176d3
mov eax, dword [0x439564]
mov ecx, dword [0x439560]
mov edx, eax
add edx, 0x1af5ff8a
sub edx, 1
sub edx, 0x1af5ff8a
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, 0xc68f4777
mov ecx, 0x682447df
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c0], eax
jmp 0x4176d3
mov eax, dword [ebp - 0x118]
mov ecx, dword [eax]
lea eax, str.LoadKeyboard
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00409e70
add esp, 8
mov ecx, eax
mov eax, dword [ebp - 0x114]
mov dword [eax], ecx
mov dword [ebp - 0x1c0], 0xe755d333
jmp 0x4176d3
mov eax, dword [ebp - 0x1b8]
mov eax, dword [eax]
mov dword [ebp - 0x14], eax
mov eax, dword [0x439564]
mov ecx, dword [0x439560]
mov edx, eax
sub edx, 0x2b7b042
sub edx, 1
add edx, 0x2b7b042
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, 0x827c9015
mov ecx, 0xdf722a9f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x1c0], eax
jmp 0x4176d3
mov eax, dword [ebp - 0x188]
mov byte [eax], 0
mov dword [ebp - 0x1c0], 0x3a9c46cf
jmp 0x4176d3
mov eax, dword [ebp - 0x184]
mov byte [eax], 1
mov dword [ebp - 0x1c0], 0x5a9ff2f1
jmp 0x4176d3
mov eax, dword [ebp - 0xbc]
mov eax, dword [ebp - 0xbc]
mov eax, dword [ebp - 0xbc]
mov eax, dword [ebp - 0xbc]
mov eax, dword [ebp - 0xbc]
mov ecx, dword [ebp - 0xbc]
add ecx, 0xd579cbb1
add ecx, 1
sub ecx, 0xd579cbb1
mov eax, dword [ebp - 0x180]
mov dword [eax], ecx
mov dword [ebp - 0x1c0], 0xbb325ae6
jmp 0x4176d3
mov eax, dword [ebp - 0x170]
mov dword [ebp - 0x1c0], 0x9ce74fe7
jmp 0x4176d3
mov dword [ebp - 0x1c0], 0x491475a5
jmp 0x4176d3
mov eax, dword [ebp - 0x160]
mov dword [ebp - 0x1c0], 0x46bdf608
jmp 0x4176d3
mov dword [ebp - 0x1c0], 0xea12b2f1
jmp 0x4176d3
mov eax, dword [ebp - 0x1b8]
mov dword [ebp - 0x1c0], 0x95aa7b2a
jmp 0x40aadf