Function at 0x41a1a0
Capabilities:
Check os version
Hash data using fnv
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xc78
mov esi, esp
mov eax, dword [0x496080]
xor eax, ebp
mov dword [esi + 0xc70], eax
mov ecx, dword [0x4976b0]
mov eax, dword [0x4976ac]
xor edi, edi
sub edi, 1
mov edx, ecx
add edx, edi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [esi + 0x282], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [esi + 0x283], al
mov dword [esi + 0x27c], 0xd8ec593c
mov eax, dword [esi + 0x27c]
mov dword [esi + 0x278], eax
sub eax, 0x8086d94e
je 0x41d703
jmp 0x41a21b
mov eax, dword [esi + 0x278]
sub eax, 0x82c11f7b
je 0x4376da
jmp 0x41a231
mov eax, dword [esi + 0x278]
sub eax, 0x832548d1
je 0x4376cb
jmp 0x41a247
mov eax, dword [esi + 0x278]
sub eax, 0x854c96a8
je 0x41eeb4
jmp 0x41a25d
mov eax, dword [esi + 0x278]
sub eax, 0x867917ad
je 0x43698d
jmp 0x41a273
mov eax, dword [esi + 0x278]
sub eax, 0x868b1bcf
je 0x41e258
jmp 0x41a289
mov eax, dword [esi + 0x278]
sub eax, 0x86f48952
je 0x41c72d
jmp 0x41a29f
mov eax, dword [esi + 0x278]
sub eax, 0x8782b228
je 0x44e25e
jmp 0x41a2b5
mov eax, dword [esi + 0x278]
sub eax, 0x87ca9b2b
je 0x41fef0
jmp 0x41a2cb
mov eax, dword [esi + 0x278]
sub eax, 0x87f2a8c4
je 0x44e0f9
jmp 0x41a2e1
mov eax, dword [esi + 0x278]
sub eax, 0x888c2f96
je 0x41ca6d
jmp 0x41a2f7
mov eax, dword [esi + 0x278]
sub eax, 0x8898df04
je 0x420086
jmp 0x41a30d
mov eax, dword [esi + 0x278]
sub eax, 0x8afb36df
je 0x4200fc
jmp 0x41a323
mov eax, dword [esi + 0x278]
sub eax, 0x8b535360
je 0x41e2da
jmp 0x41a339
mov eax, dword [esi + 0x278]
sub eax, 0x8b7bab05
je 0x41dc13
jmp 0x41a34f
mov eax, dword [esi + 0x278]
sub eax, 0x8c72e6d9
je 0x41fe6c
jmp 0x41a365
mov eax, dword [esi + 0x278]
sub eax, 0x8e268c88
je 0x43779b
jmp 0x41a37b
mov eax, dword [esi + 0x278]
sub eax, 0x8f00f935
je 0x44e12c
jmp 0x41a391
mov eax, dword [esi + 0x278]
sub eax, 0x8fc082ed
je 0x42056d
jmp 0x41a3a7
mov eax, dword [esi + 0x278]
sub eax, 0x8fcd0f78
je 0x437130
jmp 0x41a3bd
mov eax, dword [esi + 0x278]
sub eax, 0x9143daa6
je 0x41d147
jmp 0x41a3d3
mov eax, dword [esi + 0x278]
sub eax, 0x914772ca
je 0x436d58
jmp 0x41a3e9
mov eax, dword [esi + 0x278]
sub eax, 0x915acc5a
je 0x41d891
jmp 0x41a3ff
mov eax, dword [esi + 0x278]
sub eax, 0x91606d83
je 0x44e1bc
jmp 0x41a415
mov eax, dword [esi + 0x278]
sub eax, 0x9175b768
je 0x41f906
jmp 0x41a42b
mov eax, dword [esi + 0x278]
sub eax, 0x91d2c08e
je 0x41c880
jmp 0x41a441
mov eax, dword [esi + 0x278]
sub eax, 0x91fb8ad9
je 0x44e393
jmp 0x41a457
mov eax, dword [esi + 0x278]
sub eax, 0x91fd2ac8
je 0x44e3b6
jmp 0x41a46d
mov eax, dword [esi + 0x278]
sub eax, 0x921690a9
je 0x44e37e
jmp 0x41a483
mov eax, dword [esi + 0x278]
sub eax, 0x9221462a
je 0x44e4b1
jmp 0x41a499
mov eax, dword [esi + 0x278]
sub eax, 0x92dd0695
je 0x44e201
jmp 0x41a4af
mov eax, dword [esi + 0x278]
sub eax, 0x94f46e5f
je 0x41fa4c
jmp 0x41a4c5
mov eax, dword [esi + 0x278]
sub eax, 0x9574ab64
je 0x41db99
jmp 0x41a4db
mov eax, dword [esi + 0x278]
sub eax, 0x95c38f70
je 0x41f23a
jmp 0x41a4f1
mov eax, dword [esi + 0x278]
sub eax, 0x95fd55b2
je 0x41df9d
jmp 0x41a507
mov eax, dword [esi + 0x278]
sub eax, 0x961a9baa
je 0x41c9f7
jmp 0x41a51d
mov eax, dword [esi + 0x278]
sub eax, 0x96ea820c
je 0x436a6f
jmp 0x41a533
mov eax, dword [esi + 0x278]
sub eax, 0x977e88c2
je 0x420176
jmp 0x41a549
mov eax, dword [esi + 0x278]
sub eax, 0x985afa9d
je 0x44e369
jmp 0x41a55f
mov eax, dword [esi + 0x278]
sub eax, 0x999fc310
je 0x436a0a
jmp 0x41a575
mov eax, dword [esi + 0x278]
sub eax, 0x99b1f57a
je 0x41e6be
jmp 0x41a58b
mov eax, dword [esi + 0x278]
sub eax, 0x9aa65693
je 0x437963
jmp 0x41a5a1
mov eax, dword [esi + 0x278]
sub eax, 0x9b0bb3b9
je 0x41e35f
jmp 0x41a5b7
mov eax, dword [esi + 0x278]
sub eax, 0x9b5dc2b1
je 0x420444
jmp 0x41a5cd
mov eax, dword [esi + 0x278]
sub eax, 0x9f66ab88
je 0x41d5c6
jmp 0x41a5e3
mov eax, dword [esi + 0x278]
sub eax, 0x9ff858a0
je 0x41e1f8
jmp 0x41a5f9
mov eax, dword [esi + 0x278]
sub eax, 0xa0423835
je 0x420185
jmp 0x41a60f
mov eax, dword [esi + 0x278]
sub eax, 0xa07219d7
je 0x437393
jmp 0x41a625
mov eax, dword [esi + 0x278]
sub eax, 0xa08859ab
je 0x41e692
jmp 0x41a63b
mov eax, dword [esi + 0x278]
sub eax, 0xa0fca37b
je 0x44e5bf
jmp 0x41a651
mov eax, dword [esi + 0x278]
sub eax, 0xa14e6571
je 0x41ceba
jmp 0x41a667
mov eax, dword [esi + 0x278]
sub eax, 0xa2110161
je 0x41e47b
jmp 0x41a67d
mov eax, dword [esi + 0x278]
sub eax, 0xa36d5dc8
je 0x438054
jmp 0x41a693
mov eax, dword [esi + 0x278]
sub eax, 0xa5060190
je 0x44e665
jmp 0x41a6a9
mov eax, dword [esi + 0x278]
sub eax, 0xa527b760
je 0x4206aa
jmp 0x41a6bf
mov eax, dword [esi + 0x278]
sub eax, 0xa5b9c076
je 0x44e159
jmp 0x41a6d5
mov eax, dword [esi + 0x278]
sub eax, 0xa7244ec4
je 0x41d55d
jmp 0x41a6eb
mov eax, dword [esi + 0x278]
sub eax, 0xa838f6c4
je 0x44e50e
jmp 0x41a701
mov eax, dword [esi + 0x278]
sub eax, 0xa96bd4f3
je 0x41f191
jmp 0x41a717
mov eax, dword [esi + 0x278]
sub eax, 0xaa21c028
je 0x41fc2a
jmp 0x41a72d
mov eax, dword [esi + 0x278]
sub eax, 0xaa507f38
je 0x436add
jmp 0x41a743
mov eax, dword [esi + 0x278]
sub eax, 0xaaa7e533
je 0x41ee81
jmp 0x41a759
mov eax, dword [esi + 0x278]
sub eax, 0xab83eb40
je 0x436c86
jmp 0x41a76f
mov eax, dword [esi + 0x278]
sub eax, 0xac17badf
je 0x41dad2
jmp 0x41a785
mov eax, dword [esi + 0x278]
sub eax, 0xad26688c
je 0x41d028
push eax
sub esp, 0x104
mov eax, esp
mov dword [esi + 0x29c], eax
mov ecx, dword [0x4976b0]
mov eax, dword [0x4976ac]
xor edi, edi
sub edi, 1
mov edx, ecx
add edx, edi
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, 0x5822da60
mov ecx, 0x4888c6d1
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x27c], eax
jmp 0x44e66f
push eax
mov eax, esp
mov dword [esi + 0x2a0], eax
push eax
mov eax, esp
mov dword [esi + 0x2a4], eax
push eax
mov eax, esp
mov dword [esi + 0x2a8], eax
mov dword [esi + 0x27c], 0x45b18df3
jmp 0x44e66f
mov ecx, dword [0x4976b0]
mov eax, dword [0x4976ac]
mov edx, ecx
add edx, 0xd164b90
sub edx, 1
sub edx, 0xd164b90
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, 0xa5b9c076
mov ecx, 0x888c2f96
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x27c], eax
jmp 0x44e66f
mov eax, dword [0x4976b0]
mov ecx, dword [0x4976ac]
mov edx, eax
sub edx, 0x7116e476
sub edx, 1
add edx, 0x7116e476
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, 0x4525f742
mov ecx, 0xca0887ca
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x27c], eax
jmp 0x44e66f
mov dl, byte [esi + 0x2c3]
mov eax, 0xd87d46fc
mov ecx, 0x9143daa6
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x27c], eax
jmp 0x44e66f
mov eax, dword [0x4976b0]
mov ecx, dword [0x4976ac]
xor edi, edi
sub edi, 1
mov edx, eax
add edx, edi
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, 0x52330ca3
mov ecx, 0x7f5e8f9a
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x27c], eax
jmp 0x44e66f
mov eax, dword [esi + 0x288]
mov byte [eax], 1
mov eax, dword [0x4976b0]
mov ecx, dword [0x4976ac]
mov edx, eax
sub edx, 0xf3d58a6a
sub edx, 1
add edx, 0xf3d58a6a
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, 0xee6fbfdd
mov ecx, 0xdc8f038c
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x27c], eax
jmp 0x44e66f
mov ecx, dword [0x4976b0]
mov eax, dword [0x4976ac]
mov edx, ecx
sub edx, 0x7958f84e
sub edx, 1
add edx, 0x7958f84e
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, 0xfb99e4
mov ecx, 0x7614f6f
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x27c], eax
jmp 0x44e66f
mov eax, dword [0x4976b0]
mov ecx, dword [0x4976ac]
mov edx, eax
sub edx, 0x16dc0445
sub edx, 1
add edx, 0x16dc0445
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, 0xb387ed6
mov ecx, 0x526a1078
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x27c], eax
jmp 0x44e66f
mov ecx, dword [0x4976b0]
mov eax, dword [0x4976ac]
mov edx, ecx
sub edx, 0x9780fa80
sub edx, 1
add edx, 0x9780fa80
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, 0x92dd0695
mov ecx, 0xb35497ef
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x27c], eax
jmp 0x44e66f
mov eax, dword [0x4976b0]
mov ecx, dword [0x4976ac]
mov edx, eax
sub edx, 0x2c19ce51
sub edx, 1
add edx, 0x2c19ce51
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, 0xcb410451
mov ecx, 0xdb10b07f
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x27c], eax
jmp 0x44e66f
mov dword [esi + 0x27c], 0xc16591eb
jmp 0x44e66f
mov eax, dword [0x4976b0]
mov ecx, dword [0x4976ac]
mov edx, eax
add edx, 0x913639e2
sub edx, 1
sub edx, 0x913639e2
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, 0x4804a550
mov ecx, 0x7ae7da3b
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x27c], eax
jmp 0x44e66f
mov dword [esi + 0x27c], 0xf62a7e1e
jmp 0x44e66f
mov dword [esi + 0x27c], 0x46eb75a8
jmp 0x44e66f
mov eax, dword [esi + 0x290]
mov dword [eax], 0xefb8ec5
mov ecx, dword [0x4976b0]
mov eax, dword [0x4976ac]
mov edx, ecx
add edx, 0x6e6a753d
sub edx, 1
sub edx, 0x6e6a753d
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, 0xb05eda71
mov ecx, 0x8b535360
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x27c], eax
jmp 0x44e66f
mov dword [esi + 0x27c], 0xcd7d39cd
jmp 0x44e66f
mov eax, dword [esi + 0x290]
cmp dword [eax], 0xefb8eee
setg al
and al, 1
mov byte [esi + 0x2d3], al
mov ecx, dword [0x4976b0]
mov eax, dword [0x4976ac]
xor edi, edi
sub edi, 1
mov edx, ecx
add edx, edi
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, 0x30563d1a
mov ecx, 0x5c0b196f
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x27c], eax
jmp 0x44e66f
mov eax, dword [esi + 0x290]
mov dword [eax], 0xefb8f0c
mov ecx, dword [0x4976b0]
mov eax, dword [0x4976ac]
mov edx, ecx
add edx, 0xee99f485
sub edx, 1
sub edx, 0xee99f485
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, 0x1e6d5194
mov ecx, 0xc1b5769d
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x27c], eax
jmp 0x44e66f
mov dword [esi + 0x27c], 0x725dc4e6
jmp 0x44e66f
mov ecx, dword [0x4976b0]
mov eax, dword [0x4976ac]
mov edx, ecx
sub edx, 0x2581d92d
sub edx, 1
add edx, 0x2581d92d
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, 0x441d49d9
mov ecx, 0x71fc90f0
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x27c], eax
jmp 0x44e66f
mov dword [esi + 0x27c], 0xf78bca10
jmp 0x44e66f
mov eax, dword [esi + 0x294]
mov dword [eax], 0xefb8ee3
mov dword [esi + 0x27c], 0x19d1d661
jmp 0x44e66f
mov dword [esi + 0x27c], 0x49a1bc2
jmp 0x44e66f
mov dword [esi + 0x27c], 0x1e7faf62
jmp 0x44e66f
mov eax, dword [esi + 0x2e4]
sub esp, 4
mov dword [esp], eax
call fcn.0047d0c7
add esp, 4
mov eax, dword [0x4976b0]
mov ecx, dword [0x4976ac]
xor edi, edi
sub edi, 1
mov edx, eax
add edx, edi
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, 0x91fb8ad9
mov ecx, 0x640c968b
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x27c], eax
jmp 0x44e66f
mov eax, dword [0x4976b0]
mov ecx, dword [0x4976ac]
mov edx, eax
add edx, 0x8f0ef609
sub edx, 1
sub edx, 0x8f0ef609
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, 0x91fd2ac8
mov ecx, 0xeecb6a41
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x27c], eax
jmp 0x44e66f
mov ecx, dword [0x4976b0]
mov eax, dword [0x4976ac]
mov edx, ecx
sub edx, 0xd557cf20
sub edx, 1
add edx, 0xd557cf20
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, 0xf99cf951
mov ecx, 0xe8f9c58e
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x27c], eax
jmp 0x44e66f
mov eax, dword [esi + 0x2a4]
mov eax, dword [eax]
mov dword [esi + 0x2f4], eax
mov ecx, dword [0x4976b0]
mov eax, dword [0x4976ac]
mov edx, ecx
sub edx, 0xdd8d7e42
sub edx, 1
add edx, 0xdd8d7e42
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, 0xc0ebdd37
mov ecx, 0x87ca9b2b
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x27c], eax
jmp 0x44e66f
mov eax, dword [0x4976b0]
mov ecx, dword [0x4976ac]
xor edi, edi
sub edi, 1
mov edx, eax
add edx, edi
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, 0x31d482ea
mov ecx, 0x65cba107
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x27c], eax
jmp 0x44e66f
mov ecx, dword [0x4976b0]
mov eax, dword [0x4976ac]
mov edx, ecx
add edx, 0x8ab42a93
sub edx, 1
sub edx, 0x8ab42a93
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, 0xfb53fb79
mov ecx, 0x8afb36df
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x27c], eax
jmp 0x44e66f
mov eax, dword [esi + 0x284]
mov dword [eax], 1
mov ecx, dword [0x4976b0]
mov eax, dword [0x4976ac]
xor edi, edi
sub edi, 1
mov edx, ecx
add edx, edi
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, 0xfb53fb79
mov ecx, 0x977e88c2
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x27c], eax
jmp 0x44e66f
mov dword [esi + 0x27c], 0xa0423835
jmp 0x44e66f
mov eax, dword [0x4976b0]
mov ecx, dword [0x4976ac]
mov edx, eax
add edx, 0x3300b99f
sub edx, 1
sub edx, 0x3300b99f
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, 0xc46a3db1
mov ecx, 0xb841ec8e
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x27c], eax
jmp 0x44e66f
mov ecx, dword [0x4976b0]
mov eax, dword [0x4976ac]
mov edx, ecx
add edx, 0x4a2898f8
sub edx, 1
sub edx, 0x4a2898f8
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, 0x7ec30d3
mov ecx, 0x542dafb5
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x27c], eax
jmp 0x44e66f
mov eax, dword [esi + 0x29c]
add eax, 4
sub esp, 4
mov dword [esp], eax
call fcn.00414cd0
add esp, 4
mov eax, dword [esi + 0x29c]
add eax, 4
mov dword [esi + 0x300], eax
mov eax, dword [0x4976b0]
mov ecx, dword [0x4976ac]
xor edi, edi
sub edi, 1
mov edx, eax
add edx, edi
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, 0xafa6c6d8
mov ecx, 0x111ffb60
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x27c], eax
jmp 0x44e66f
mov ecx, dword [0x4976b0]
mov eax, dword [0x4976ac]
mov edx, ecx
sub edx, 0xe94a6ed6
sub edx, 1
add edx, 0xe94a6ed6
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, 0xa36d5dc8
mov ecx, 0xd454d3a4
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x27c], eax
jmp 0x44e66f
mov dword [esi + 0x27c], 0xcb655a0c
jmp 0x44e66f
mov eax, dword [esi + 0x2b8]
cmp dword [eax], 0
setne al
and al, 1
mov byte [esi + 0x307], al
mov eax, dword [0x4976b0]
mov ecx, dword [0x4976ac]
mov edx, eax
sub edx, 0x273fcecd
sub edx, 1
add edx, 0x273fcecd
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, 0x7910ad1
mov ecx, 0x96ea820c
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x27c], eax
jmp 0x44e66f
mov ecx, dword [0x4976b0]
mov eax, dword [0x4976ac]
xor edi, edi
sub edi, 1
mov edx, ecx
add edx, edi
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, 0x392cf63a
mov ecx, 0xaa507f38
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x27c], eax
jmp 0x44e66f
mov ecx, dword [0x4976b0]
mov eax, dword [0x4976ac]
mov edx, ecx
add edx, 0xe919fb9f
sub edx, 1
sub edx, 0xe919fb9f
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, 0x392cf63a
mov ecx, 0x3451f133
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x27c], eax
jmp 0x44e66f
mov eax, dword [0x4976b0]
mov ecx, dword [0x4976ac]
mov edx, eax
add edx, 0xc666ce8
sub edx, 1
sub edx, 0xc666ce8
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, 0x312d8285
mov ecx, 0x75e60a10
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x27c], eax
jmp 0x44e66f
mov ecx, dword [0x4976b0]
mov eax, dword [0x4976ac]
mov edx, ecx
add edx, 0xc5b6d32b
sub edx, 1
sub edx, 0xc5b6d32b
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, 0xb59592ca
mov ecx, 0xebfbc10b
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x27c], eax
jmp 0x44e66f
mov dword [esi + 0x27c], 0xb29275b4
jmp 0x44e66f
mov ecx, dword [0x4976b0]
mov eax, dword [0x4976ac]
mov edx, ecx
add edx, 0x888b27e8
sub edx, 1
sub edx, 0x888b27e8
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, 0x270c4950
mov ecx, 0xf88211a6
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x27c], eax
jmp 0x44e66f
mov dword [esi + 0x27c], 0xad26688c
jmp 0x44e66f
mov eax, dword [0x4976b0]
mov ecx, dword [0x4976ac]
xor edi, edi
sub edi, 1
mov edx, eax
add edx, edi
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, 0x4f42a95
mov ecx, 0x2635cf33
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x27c], eax
jmp 0x44e66f
mov dword [esi + 0x27c], 0x8086d94e
jmp 0x44e66f
mov dword [esi + 0x27c], 0xfa53a96a
jmp 0x44e66f
mov eax, dword [esi + 0x2b4]
mov dword [esi + 0x130], eax
mov eax, dword [esi + 0x300]
mov dword [esi + 0x134], eax
mov eax, esp
mov dword [esi + 0x138], eax
mov ecx, dword [0x4976a8]
mov eax, dword [0x4976a4]
xor edi, edi
sub edi, 1
mov edx, ecx
add edx, edi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [esi + 0x312], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [esi + 0x313], al
mov dword [esi + 0x30c], 0x97bdc5aa
mov eax, dword [esi + 0x30c]
mov dword [esi + 0x12c], eax
sub eax, 0x8fb8ff5d
je 0x438525
jmp 0x4380d1
mov eax, dword [esi + 0x12c]
sub eax, 0x8fea1d33
je 0x44da33
jmp 0x4380e7
mov eax, dword [esi + 0x12c]
sub eax, 0x97bdc5aa
je 0x4384f6
jmp 0x4380fd
mov eax, dword [esi + 0x12c]
sub eax, 0xa1e64666
je 0x44db17
jmp 0x438113
mov eax, dword [esi + 0x12c]
sub eax, 0xaa9f01a2
je 0x438576
jmp 0x438129
mov eax, dword [esi + 0x12c]
sub eax, 0xaf01b642
je 0x43879f
jmp 0x43813f
mov eax, dword [esi + 0x12c]
sub eax, 0xb8b24f48
je 0x43868f
jmp 0x438155
mov eax, dword [esi + 0x12c]
sub eax, 0xbd558b54
je 0x44e03f
jmp 0x43816b
mov eax, dword [esi + 0x12c]
sub eax, 0xc00f6983
je 0x44e07a
jmp 0x438181
mov eax, dword [esi + 0x12c]
sub eax, 0xc2915fbc
je 0x44dc5f
jmp 0x438197
mov eax, dword [esi + 0x12c]
sub eax, 0xc2b63974
je 0x44dd2a
jmp 0x4381ad
mov eax, dword [esi + 0x12c]
sub eax, 0xca1e4884
je 0x44df8c
jmp 0x4381c3
mov al, byte [esi + 0x312]
mov cl, byte [esi + 0x313]
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x5911c3eb
mov ecx, 0x8fb8ff5d
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x30c], eax
jmp 0x44e075
mov eax, dword [0x4976a8]
mov ecx, dword [0x4976a4]
mov edx, eax
add edx, 0xcbec2802
sub edx, 1
sub edx, 0xcbec2802
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, 0x5911c3eb
mov ecx, 0xaa9f01a2
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x30c], eax
jmp 0x44e075
mov ecx, dword [0x4976a8]
mov eax, dword [0x4976a4]
mov edx, ecx
add edx, 0xe4f3015c
sub edx, 1
sub edx, 0xe4f3015c
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, 0x5b4f0957
mov ecx, 0xec6a82c6
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x30c], eax
jmp 0x44e075
mov eax, dword [0x4976a8]
mov ecx, dword [0x4976a4]
xor edi, edi
sub edi, 1
mov edx, eax
add edx, edi
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, 0x5b4f0957
mov ecx, 0x4ea44180
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x30c], eax
jmp 0x44e075
mov dword [esi + 0x30c], 0x1afa381c
jmp 0x44e075
mov eax, dword [esi + 0x314]
mov eax, dword [eax]
mov dword [esi + 0x320], eax
mov ecx, dword [0x4976a8]
mov eax, dword [0x4976a4]
mov edx, ecx
sub edx, 0x6f0297c8
sub edx, 1
add edx, 0x6f0297c8
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, 0xed2734fe
mov ecx, 0x22806e6d
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x30c], eax
jmp 0x44e075
mov eax, dword [0x4976a8]
mov ecx, dword [0x4976a4]
mov edx, eax
sub edx, 0x47bdee2
sub edx, 1
add edx, 0x47bdee2
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, 0x511e75f8
mov ecx, 0x256ed50
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x30c], eax
jmp 0x44e075
mov eax, dword [0x4976a8]
mov ecx, dword [0x4976a4]
mov edx, eax
add edx, 0x8e05ad8c
sub edx, 1
sub edx, 0x8e05ad8c
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, 0x65718b34
mov ecx, 0xd1f2c171
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x30c], eax
jmp 0x44e075
mov ecx, dword [0x4976a8]
mov eax, dword [0x4976a4]
xor edi, edi
sub edi, 1
mov edx, ecx
add edx, edi
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, 0xbd558b54
mov ecx, 0x45d4be60
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x30c], eax
jmp 0x44e075
mov dword [esi + 0x30c], 0xd0d78666
jmp 0x44e075
mov dword [esi + 0x30c], 0x45d4be60
jmp 0x44e075
jmp 0x4380b5
mov eax, dword [esi + 0x138]
mov ecx, dword [esi + 0x328]
mov esp, eax
mov eax, dword [esi + 0x2b0]
mov dword [eax], ecx
mov eax, dword [esi + 0x2b0]
mov dword [esi + 0x27c], 0xd454d3a4
jmp 0x44e66f
mov eax, dword [esi + 0x284]
mov dword [esi + 0x27c], 0xb2080deb
jmp 0x44e66f
mov dword [esi + 0x27c], 0x5d9e5d91
jmp 0x44e66f
mov dword [esi + 0x27c], 0x961a9baa
jmp 0x44e66f
mov dword [esi + 0x27c], 0x1e9cb1a1
jmp 0x44e66f
mov dword [esi + 0x27c], 0x915acc5a
jmp 0x44e66f
mov eax, dword [esi + 0x28c]
mov dword [eax], 0
mov dword [esi + 0x27c], 0xebc783d7
jmp 0x44e66f
mov eax, dword [esi + 0x2a8]
mov dword [esi + 0x27c], 0x1f5d5a5e
jmp 0x44e66f
mov eax, dword [esi + 0x2a4]
mov dword [esi + 0x27c], 0x3f62a80d
jmp 0x44e66f
mov eax, dword [esi + 0x2e4]
sub esp, 4
mov dword [esp], eax
call fcn.0047d0c7
add esp, 4
mov dword [esi + 0x27c], 0x9175b768
jmp 0x44e66f
mov dword [esi + 0x27c], 0xeecb6a41
jmp 0x44e66f
mov dword [esi + 0x27c], 0x96c2ba0
jmp 0x44e66f
mov eax, dword [esi + 0x284]
mov dword [esi + 0x27c], 0x4f8ff195
jmp 0x44e66f
mov dword [esi + 0x27c], 0x23fa4e47
jmp 0x44e66f
mov dword [esi + 0x27c], 0x593fcd53
jmp 0x41a1ff