Function at 0x41a840
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
mov eax, 0x2a28
call fcn.00504d80
mov esi, esp
mov eax, dword [0x51d080]
xor eax, ebp
mov dword [esi + 0x2a20], eax
mov ecx, dword [0x51e6b0]
mov eax, dword [0x51e6ac]
mov edx, ecx
add edx, 0x7a5f762c
sub edx, 1
sub edx, 0x7a5f762c
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [esi + 0x946], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [esi + 0x947], al
mov dword [esi + 0x940], 0x754ca0db
mov eax, dword [esi + 0x940]
mov dword [esi + 0x93c], eax
sub eax, 0x8114276b
je 0x47a16f
jmp 0x41a8c7
mov eax, dword [esi + 0x93c]
sub eax, 0x813863f1
je 0x47a206
jmp 0x41a8dd
mov eax, dword [esi + 0x93c]
sub eax, 0x81ebbeb4
je 0x4d51c3
jmp 0x41a8f3
mov eax, dword [esi + 0x93c]
sub eax, 0x8231b4e6
je 0x41f0a8
jmp 0x41a909
mov eax, dword [esi + 0x93c]
sub eax, 0x833797a2
je 0x41e0ce
jmp 0x41a91f
mov eax, dword [esi + 0x93c]
sub eax, 0x83f737fb
je 0x41e303
jmp 0x41a935
mov eax, dword [esi + 0x93c]
sub eax, 0x850cb97e
je 0x41e514
jmp 0x41a94b
mov eax, dword [esi + 0x93c]
sub eax, 0x867a9e1d
je 0x41cdb0
jmp 0x41a961
mov eax, dword [esi + 0x93c]
sub eax, 0x8a8c85d0
je 0x47a488
jmp 0x41a977
mov eax, dword [esi + 0x93c]
sub eax, 0x8b271164
je 0x41d947
jmp 0x41a98d
mov eax, dword [esi + 0x93c]
sub eax, 0x8b352d32
je 0x41d232
jmp 0x41a9a3
mov eax, dword [esi + 0x93c]
sub eax, 0x8b69403b
je 0x41d418
jmp 0x41a9b9
mov eax, dword [esi + 0x93c]
sub eax, 0x8bd772b3
je 0x47a72b
jmp 0x41a9cf
mov eax, dword [esi + 0x93c]
sub eax, 0x8bf86c52
je 0x41d29b
jmp 0x41a9e5
mov eax, dword [esi + 0x93c]
sub eax, 0x8c76df04
je 0x41d3c8
jmp 0x41a9fb
mov eax, dword [esi + 0x93c]
sub eax, 0x8cbf70fd
je 0x47a88b
jmp 0x41aa11
mov eax, dword [esi + 0x93c]
sub eax, 0x8cf15a14
je 0x41cf1d
jmp 0x41aa27
mov eax, dword [esi + 0x93c]
sub eax, 0x8d2dc7a2
je 0x4d4e1f
jmp 0x41aa3d
mov eax, dword [esi + 0x93c]
sub eax, 0x8dc85b40
je 0x4d5196
jmp 0x41aa53
mov eax, dword [esi + 0x93c]
sub eax, 0x90b967c6
je 0x41e58e
jmp 0x41aa69
mov eax, dword [esi + 0x93c]
sub eax, 0x911cb8e6
je 0x41e805
jmp 0x41aa7f
mov eax, dword [esi + 0x93c]
sub eax, 0x9295faf7
je 0x47a3ba
jmp 0x41aa95
mov eax, dword [esi + 0x93c]
sub eax, 0x929ab63b
je 0x41c864
jmp 0x41aaab
mov eax, dword [esi + 0x93c]
sub eax, 0x94b4b719
je 0x41c24e
jmp 0x41aac1
mov eax, dword [esi + 0x93c]
sub eax, 0x95287970
je 0x4d50d3
jmp 0x41aad7
mov eax, dword [esi + 0x93c]
sub eax, 0x95f82e26
je 0x41da0d
jmp 0x41aaed
mov eax, dword [esi + 0x93c]
sub eax, 0x964d36b6
je 0x4d5105
jmp 0x41ab03
mov eax, dword [esi + 0x93c]
sub eax, 0x96f564ef
je 0x41eb2c
jmp 0x41ab19
mov eax, dword [esi + 0x93c]
sub eax, 0x98605e2e
je 0x41e797
jmp 0x41ab2f
mov eax, dword [esi + 0x93c]
sub eax, 0x991c5ac0
je 0x41e295
jmp 0x41ab45
mov eax, dword [esi + 0x93c]
sub eax, 0x9d90f1ff
je 0x4d50e2
jmp 0x41ab5b
mov eax, dword [esi + 0x93c]
sub eax, 0x9e401c05
je 0x41ef53
jmp 0x41ab71
mov eax, dword [esi + 0x93c]
sub eax, 0x9f39c7ac
je 0x41f354
jmp 0x41ab87
mov eax, dword [esi + 0x93c]
sub eax, 0xa0b5b193
je 0x41eddf
jmp 0x41ab9d
mov eax, dword [esi + 0x93c]
sub eax, 0xa150f0e8
je 0x41ecd7
jmp 0x41abb3
mov eax, dword [esi + 0x93c]
sub eax, 0xa19fd675
je 0x41ced4
jmp 0x41abc9
mov eax, dword [esi + 0x93c]
sub eax, 0xa24a40dc
je 0x4d4f7e
jmp 0x41abdf
mov eax, dword [esi + 0x93c]
sub eax, 0xa3dc19e8
je 0x41d1b5
jmp 0x41abf5
mov eax, dword [esi + 0x93c]
sub eax, 0xa6bec666
je 0x41c48c
jmp 0x41ac0b
mov eax, dword [esi + 0x93c]
sub eax, 0xa7b9a725
je 0x41dbc4
jmp 0x41ac21
mov eax, dword [esi + 0x93c]
sub eax, 0xa8d116e4
je 0x41f561
jmp 0x41ac37
mov eax, dword [esi + 0x93c]
sub eax, 0xaa6340db
je 0x4d4e76
jmp 0x41ac4d
mov eax, dword [esi + 0x93c]
sub eax, 0xab39dbb2
je 0x41d7e5
jmp 0x41ac63
mov eax, dword [esi + 0x93c]
sub eax, 0xab64695d
je 0x479fc6
jmp 0x41ac79
mov eax, dword [esi + 0x93c]
sub eax, 0xacb0743d
je 0x41e3b4
jmp 0x41ac8f
mov eax, dword [esi + 0x93c]
sub eax, 0xad313adc
je 0x41c362
jmp 0x41aca5
mov eax, dword [esi + 0x93c]
sub eax, 0xb0beeddc
je 0x41d137
jmp 0x41acbb
mov eax, dword [esi + 0x93c]
sub eax, 0xb1125e5e
je 0x4d4ed0
jmp 0x41acd1
mov eax, dword [esi + 0x93c]
sub eax, 0xb2980a00
je 0x47aa54
jmp 0x41ace7
mov eax, dword [esi + 0x93c]
sub eax, 0xb396adcc
je 0x47a2c9
jmp 0x41acfd
mov eax, dword [esi + 0x93c]
sub eax, 0xb42570d5
je 0x41cad0
jmp 0x41ad13
mov eax, dword [esi + 0x93c]
sub eax, 0xb4c39afb
je 0x41cb22
jmp 0x41ad29
mov eax, dword [esi + 0x93c]
sub eax, 0xb50466f2
je 0x41edd0
jmp 0x41ad3f
mov eax, dword [esi + 0x93c]
sub eax, 0xb67004a9
je 0x41e98b
jmp 0x41ad55
mov eax, dword [esi + 0x93c]
sub eax, 0xb89458ba
je 0x41c2c0
jmp 0x41ad6b
mov eax, dword [esi + 0x93c]
sub eax, 0xb9ad754d
je 0x41d9fe
jmp 0x41ad81
mov eax, dword [esi + 0x93c]
sub eax, 0xb9d94a58
je 0x41d4df
jmp 0x41ad97
mov eax, dword [esi + 0x93c]
sub eax, 0xb9f9c53a
je 0x47a160
jmp 0x41adad
mov eax, dword [esi + 0x93c]
sub eax, 0xba4d6ce7
je 0x4d4d95
jmp 0x41adc3
mov eax, dword [esi + 0x93c]
sub eax, 0xbaa128cb
je 0x41d6b7
jmp 0x41add9
mov eax, dword [esi + 0x93c]
sub eax, 0xbb1ca980
je 0x41e788
jmp 0x41adef
mov eax, dword [esi + 0x93c]
sub eax, 0xbc7e3b9a
je 0x47a961
jmp 0x41ae05
mov eax, dword [esi + 0x93c]
sub eax, 0xbcea5b80
je 0x41e085
jmp 0x41ae1b
mov eax, dword [esi + 0x93c]
sub eax, 0xbcecc63c
je 0x47a7f5
jmp 0x41ae31
mov eax, dword [esi + 0x93c]
sub eax, 0xbd8d0ec0
je 0x41d24a
push eax
mov eax, esp
mov dword [esi + 0x948], eax
push eax
mov eax, esp
mov dword [esi + 0x94c], eax
mov eax, dword [0x51e6b0]
mov ecx, dword [0x51e6ac]
mov edx, eax
sub edx, 0x2d817af8
sub edx, 1
add edx, 0x2d817af8
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, 0x20f5f64d
mov ecx, 0xd3b85d0e
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov eax, dword [0x51e6b0]
mov ecx, dword [0x51e6ac]
mov edx, eax
add edx, 0x54710b20
sub edx, 1
sub edx, 0x54710b20
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, 0x52cd6026
mov ecx, 0x6eb933e9
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
push eax
mov eax, esp
mov dword [esi + 0x950], eax
push eax
mov eax, esp
mov dword [esi + 0x954], eax
push eax
mov eax, esp
mov dword [esi + 0x958], eax
push eax
mov eax, esp
mov dword [esi + 0x95c], eax
sub esp, 0x108
mov eax, esp
mov dword [esi + 0x960], eax
push eax
mov eax, esp
mov dword [esi + 0x964], eax
mov ecx, dword [0x51e6b0]
mov eax, dword [0x51e6ac]
mov edx, ecx
sub edx, 0x30ee87a8
sub edx, 1
add edx, 0x30ee87a8
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, 0x726a93be
mov ecx, 0x1973ad2c
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov eax, dword [0x51e6b0]
mov ecx, dword [0x51e6ac]
mov edx, eax
add edx, 0x60ed1b9a
sub edx, 1
sub edx, 0x60ed1b9a
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, 0xc09af316
mov ecx, 0xd0f20fb4
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov dword [esi + 0x940], 0x5fb1fe8d
jmp 0x4d51e8
mov eax, dword [esi + 0x94c]
mov byte [eax], 0
mov eax, dword [0x51e6b0]
mov ecx, dword [0x51e6ac]
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, 0x386dcef5
mov ecx, 0xb4c39afb
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov dword [esi + 0x940], 0x5626dfa1
jmp 0x4d51e8
mov eax, dword [0x51e6b0]
mov ecx, dword [0x51e6ac]
mov edx, eax
sub edx, 0xe580c3da
sub edx, 1
add edx, 0xe580c3da
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, 0xc8af0184
mov ecx, 0xc819dffe
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov eax, dword [0x51e6b0]
mov ecx, dword [0x51e6ac]
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, 0xbcecc63c
mov ecx, 0x8cf15a14
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov eax, dword [0x51e6b0]
mov ecx, dword [0x51e6ac]
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, 0x26801217
mov ecx, 0xf37f5e36
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov dl, 1
mov eax, 0x8b352d32
mov ecx, 0x312363c5
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov ecx, dword [0x51e6b0]
mov eax, dword [0x51e6ac]
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, 0x14ef11d4
mov ecx, 0x8f78397
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov eax, dword [esi + 0x94c]
mov byte [eax], 1
mov dword [esi + 0x940], 0xbd8d0ec0
jmp 0x4d51e8
mov eax, dword [0x51e6b0]
mov ecx, dword [0x51e6ac]
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, 0x356a7048
mov ecx, 0x48ad2600
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov dword [esi + 0x940], 0x114c5e9b
jmp 0x4d51e8
mov ecx, dword [0x51e6b0]
mov eax, dword [0x51e6ac]
mov edx, ecx
add edx, 0x3685507b
sub edx, 1
sub edx, 0x3685507b
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, 0x51fd7f4
mov ecx, 0x61b0bcc4
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov ecx, dword [0x51e6b0]
mov eax, dword [0x51e6ac]
mov edx, ecx
sub edx, 0x3ea5834d
sub edx, 1
add edx, 0x3ea5834d
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, 0x69e265c
mov ecx, 0xed0fe326
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov dword [esi + 0x940], 0x1cf9f4a0
jmp 0x4d51e8
mov eax, dword [esi + 0x950]
mov eax, dword [eax]
mov dword [esi + 0x988], eax
mov eax, dword [0x51e6b0]
mov ecx, dword [0x51e6ac]
mov edx, eax
sub edx, 0x929e5b3e
sub edx, 1
add edx, 0x929e5b3e
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, 0x72cf675
mov ecx, 0xdae8c46e
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov eax, dword [0x51e6b0]
mov ecx, dword [0x51e6ac]
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, 0xc673e39e
mov ecx, 0xda6e01d6
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov dword [esi + 0x940], 0x7aaee139
jmp 0x4d51e8
mov eax, dword [0x51e6b0]
mov ecx, dword [0x51e6ac]
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, 0xf41af4e2
mov ecx, 0x7013ace7
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov eax, dword [esi + 0x954]
mov dword [eax], 0xefb8ec5
mov eax, dword [esi + 0x954]
mov eax, dword [eax]
mov dword [esi + 0x98c], eax
mov eax, dword [0x51e6b0]
mov ecx, dword [0x51e6ac]
mov edx, eax
add edx, 0x34c40f03
sub edx, 1
sub edx, 0x34c40f03
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, 0xaa6340db
mov ecx, 0xd6d47f09
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov eax, dword [0x51e6b0]
mov ecx, dword [0x51e6ac]
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, 0x44d94195
mov ecx, 0x833797a2
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov eax, dword [0x51e6b0]
mov ecx, dword [0x51e6ac]
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, 0x44d94195
mov ecx, 0x421b0e0c
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov ecx, dword [0x51e6b0]
mov eax, dword [0x51e6ac]
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, 0xddf4dd6
mov ecx, 0x83f737fb
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov eax, dword [0x51e6b0]
mov ecx, dword [0x51e6ac]
mov edx, eax
sub edx, 0x5205ca2a
sub edx, 1
add edx, 0x5205ca2a
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, 0xddf4dd6
mov ecx, 0xf35dd71b
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov eax, dword [0x51e6b0]
mov ecx, dword [0x51e6ac]
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, 0xbfdbdcc6
mov ecx, 0xc4f65174
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov eax, dword [esi + 0x958]
mov dword [eax], 0xefb8ebe
mov ecx, dword [0x51e6b0]
mov eax, dword [0x51e6ac]
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, 0x6aa543f2
mov ecx, 0x90b967c6
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov dword [esi + 0x940], 0xfe7b4b7b
jmp 0x4d51e8
mov dword [esi + 0x940], 0x98605e2e
jmp 0x4d51e8
mov ecx, dword [0x51e6b0]
mov eax, dword [0x51e6ac]
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, 0x3e82c193
mov ecx, 0x911cb8e6
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov eax, dword [0x51e6b0]
mov ecx, dword [0x51e6ac]
mov edx, eax
add edx, 0xf52a57d1
sub edx, 1
sub edx, 0xf52a57d1
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, 0x3e82c193
mov ecx, 0xd91917e3
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov eax, dword [0x51e6b0]
mov ecx, dword [0x51e6ac]
mov edx, eax
add edx, 0xb1934e44
sub edx, 1
sub edx, 0xb1934e44
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, 0x5cf2e485
mov ecx, 0x9c17f7d
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov eax, dword [0x51e6b0]
mov ecx, dword [0x51e6ac]
mov edx, eax
add edx, 0x44799363
sub edx, 1
sub edx, 0x44799363
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, 0x3071056b
mov ecx, 0xf4f22422
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov ecx, dword [0x51e6b0]
mov eax, dword [0x51e6ac]
mov edx, ecx
add edx, 0x78949412
sub edx, 1
sub edx, 0x78949412
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, 0x51f2d4d6
mov ecx, 0x162eef34
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov dword [esi + 0x940], 0xa0b5b193
jmp 0x4d51e8
mov ecx, dword [0x51e6b0]
mov eax, dword [0x51e6ac]
mov edx, ecx
sub edx, 0xd554a3cd
sub edx, 1
add edx, 0xd554a3cd
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, 0x671b351e
mov ecx, 0xc8ee3c28
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov dl, byte [esi + 0x99f]
mov eax, 0x220d49e4
mov ecx, 0xc631cb8
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov dword [esi + 0x940], 0xd54b83db
jmp 0x4d51e8
mov eax, dword [esi + 0x9ac]
sub esp, 4
mov dword [esp], eax
call fcn.00504db4
add esp, 4
mov dword [esi + 0x940], 0x56c12553
jmp 0x4d51e8
mov eax, dword [esi + 0x960]
add eax, 4
sub esp, 4
mov dword [esp], eax
call fcn.00415520
add esp, 4
mov eax, dword [esi + 0x960]
add eax, 4
mov dword [esi + 0x930], eax
mov eax, dword [esi + 0x978]
mov dword [esi + 0x934], eax
mov eax, esp
mov dword [esi + 0x938], eax
mov ecx, dword [0x51e6a8]
mov eax, dword [0x51e6a4]
mov edx, ecx
sub edx, 0x72075c2d
sub edx, 1
add edx, 0x72075c2d
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [esi + 0x9f2], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [esi + 0x9f3], al
mov dword [esi + 0x9ec], 0x6b0367ef
mov eax, dword [esi + 0x9ec]
mov dword [esi + 0x92c], eax
sub eax, 0x869a0646
je 0x43e058
jmp 0x41f600
mov eax, dword [esi + 0x92c]
sub eax, 0x95e47f03
je 0x41fe33
jmp 0x41f616
mov eax, dword [esi + 0x92c]
sub eax, 0x964e44b3
je 0x41fda5
jmp 0x41f62c
mov eax, dword [esi + 0x92c]
sub eax, 0x96c7f83b
je 0x45c028
jmp 0x41f642
mov eax, dword [esi + 0x92c]
sub eax, 0x9eaba88d
je 0x41fbb6
jmp 0x41f658
mov eax, dword [esi + 0x92c]
sub eax, 0xa58ec05d
je 0x45c019
jmp 0x41f66e
mov eax, dword [esi + 0x92c]
sub eax, 0xb01d359f
je 0x45c063
jmp 0x41f684
mov eax, dword [esi + 0x92c]
sub eax, 0xb1b317fa
je 0x45c004
jmp 0x41f69a
mov eax, dword [esi + 0x92c]
sub eax, 0xb4c1d4aa
je 0x41ff51
jmp 0x41f6b0
mov eax, dword [esi + 0x92c]
sub eax, 0xb8e36de8
je 0x43e049
jmp 0x41f6c6
mov eax, dword [esi + 0x92c]
sub eax, 0xb93e1621
je 0x43e06d
jmp 0x41f6dc
mov eax, dword [esi + 0x92c]
sub eax, 0xbd65ff0a
je 0x4200ce
jmp 0x41f6f2
mov eax, dword [esi + 0x92c]
sub eax, 0xbfc38b60
je 0x43dd71
jmp 0x41f708
mov eax, dword [esi + 0x92c]
sub eax, 0xc6c3bf9a
je 0x43de22
jmp 0x41f71e
mov eax, dword [esi + 0x92c]
sub eax, 0xc8ca6496
je 0x479e15
jmp 0x41f734
mov eax, dword [esi + 0x92c]
sub eax, 0xcb506182
je 0x41faca
jmp 0x41f74a
mov eax, dword [esi + 0x92c]
sub eax, 0xcb90857a
je 0x41fa79
jmp 0x41f760
mov eax, dword [esi + 0x92c]
sub eax, 0xcd219bab
je 0x41ffce
jmp 0x41f776
mov eax, dword [esi + 0x92c]
sub eax, 0xd00ca2e3
je 0x43ddc2
jmp 0x41f78c
mov eax, dword [esi + 0x92c]
sub eax, 0xd075c147
je 0x45c046
jmp 0x41f7a2
mov eax, dword [esi + 0x92c]
sub eax, 0xd6bd609c
je 0x41fcab
jmp 0x41f7b8
mov eax, dword [esi + 0x92c]
sub eax, 0xde879e1c
je 0x43df51
jmp 0x41f7ce
mov eax, dword [esi + 0x92c]
sub eax, 0xed6575f2
je 0x43de88
jmp 0x41f7e4
mov eax, dword [esi + 0x92c]
sub eax, 0xf37a516f
je 0x43dedb
jmp 0x41f7fa
mov eax, dword [0x51e6a8]
mov ecx, dword [0x51e6a4]
mov edx, eax
add edx, 0xb6f141af
sub edx, 1
sub edx, 0xb6f141af
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, 0xa58ec05d
mov ecx, 0xcb506182
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x9ec], eax
jmp 0x479e10
mov ecx, dword [0x51e6a8]
mov eax, dword [0x51e6a4]
mov edx, ecx
sub edx, 0xe6cf1c41
sub edx, 1
add edx, 0xe6cf1c41
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, 0x361847d7
mov ecx, 0x33576fc2
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x9ec], eax
jmp 0x479e10
push eax
mov eax, esp
mov dword [esi + 0x9f4], eax
mov ecx, dword [0x51e6a8]
mov eax, dword [0x51e6a4]
mov edx, ecx
sub edx, 0x43a069d6
sub edx, 1
add edx, 0x43a069d6
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, 0x96c7f83b
mov ecx, 0x2dc2d5e5
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x9ec], eax
jmp 0x479e10
mov dword [esi + 0x9ec], 0x1a3b267a
jmp 0x479e10
push eax
mov eax, esp
mov dword [esi + 0x9f8], eax
mov ecx, dword [0x51e6a8]
mov eax, dword [0x51e6a4]
mov edx, ecx
add edx, 0x4e73d60b
sub edx, 1
sub edx, 0x4e73d60b
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, 0xf37a516f
mov ecx, 0x10126050
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x9ec], eax
jmp 0x479e10
mov eax, dword [0x51e6a8]
mov ecx, dword [0x51e6a4]
mov edx, eax
sub edx, 0xac74618c
sub edx, 1
add edx, 0xac74618c
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, 0x727c641e
mov ecx, 0xf86345c0
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x9ec], eax
jmp 0x479e10
mov eax, dword [0x51e6a8]
mov ecx, dword [0x51e6a4]
mov edx, eax
sub edx, 0x3e75d6e0
sub edx, 1
add edx, 0x3e75d6e0
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, 0x727c641e
mov ecx, 0x42d046a8
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x9ec], eax
jmp 0x479e10
mov eax, dword [0x51e6a8]
mov ecx, dword [0x51e6a4]
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, 0x869a0646
mov ecx, 0x310e46e1
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x9ec], eax
jmp 0x479e10
mov eax, dword [0x51e6a8]
mov ecx, dword [0x51e6a4]
mov edx, eax
sub edx, 0x7f9258b1
sub edx, 1
add edx, 0x7f9258b1
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, 0xb01d359f
mov ecx, 0x128ba230
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x9ec], eax
jmp 0x479e10
mov eax, dword [0x51e6a8]
mov ecx, dword [0x51e6a4]
mov edx, eax
sub edx, 0x9fa78718
sub edx, 1
add edx, 0x9fa78718
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, 0xb93e1621
mov ecx, 0xd00ca2e3
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x9ec], eax
jmp 0x479e10
mov dword [esi + 0x9ec], 0xa47deff
jmp 0x479e10
mov eax, dword [esi + 0x9f4]
mov eax, dword [eax]
mov dword [esi + 0xa00], eax
mov eax, dword [0x51e6a8]
mov ecx, dword [0x51e6a4]
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, 0xb1b317fa
mov ecx, 0x3ad46d9f
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x9ec], eax
jmp 0x479e10
mov eax, dword [esi + 0xa00]
mov dword [esi + 0xa04], eax
mov dword [esi + 0x9ec], 0x3a390ffa
jmp 0x479e10
mov ecx, dword [0x51e6a8]
mov eax, dword [0x51e6a4]
mov edx, ecx
add edx, 0xab3317dd
sub edx, 1
sub edx, 0xab3317dd
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, 0x5890f220
mov ecx, 0xde879e1c
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x9ec], eax
jmp 0x479e10
mov eax, dword [0x51e6a8]
mov ecx, dword [0x51e6a4]
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, 0x5890f220
mov ecx, 0x8293fc4
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x9ec], eax
jmp 0x479e10
mov dword [esi + 0x9ec], 0xf86345c0
jmp 0x479e10
mov eax, dword [esi + 0x9f8]
mov dword [esi + 0x9ec], 0x310e46e1
jmp 0x479e10
mov eax, esp
mov dword [esi + 0x7a4], eax
mov ecx, dword [0x51e6a0]
mov eax, dword [0x51e69c]
mov edx, ecx
add edx, 0x28e33e9c
sub edx, 1
sub edx, 0x28e33e9c
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [esi + 0xa62], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [esi + 0xa63], al
mov dword [esi + 0xa5c], 0x7a22c751
mov eax, dword [esi + 0xa5c]
mov dword [esi + 0x7a0], eax
sub eax, 0x80b683f9
je 0x441c54
jmp 0x43e0da
mov eax, dword [esi + 0x7a0]
sub eax, 0x815b6f53
je 0x45b504
jmp 0x43e0f0
mov eax, dword [esi + 0x7a0]
sub eax, 0x85c39274
je 0x44763a
jmp 0x43e106
mov eax, dword [esi + 0x7a0]
sub eax, 0x8a2bf879
je 0x43ecb0
jmp 0x43e11c
mov eax, dword [esi + 0x7a0]
sub eax, 0x8d204bbb
je 0x44c9aa
jmp 0x43e132
mov eax, dword [esi + 0x7a0]
sub eax, 0x8dabe7cf
je 0x44c70c
jmp 0x43e148
mov eax, dword [esi + 0x7a0]
sub eax, 0x8f07c5d3
je 0x44205f
jmp 0x43e15e
mov eax, dword [esi + 0x7a0]
sub eax, 0x94224060
je 0x44481f
jmp 0x43e174
mov eax, dword [esi + 0x7a0]
sub eax, 0x99964342
je 0x43ee23
jmp 0x43e18a
mov eax, dword [esi + 0x7a0]
sub eax, 0xa034d617
je 0x4534ed
jmp 0x43e1a0
mov eax, dword [esi + 0x7a0]
sub eax, 0xa04be555
je 0x44df6a
jmp 0x43e1b6
mov eax, dword [esi + 0x7a0]
sub eax, 0xa0c0ccbc
je 0x44e108
jmp 0x43e1cc
mov eax, dword [esi + 0x7a0]
sub eax, 0xa2fd972e
je 0x4534c9
jmp 0x43e1e2
mov eax, dword [esi + 0x7a0]
sub eax, 0xa77e978a
je 0x453520
push eax
mov eax, esp
mov dword [esi + 0xa64], eax
mov eax, dword [0x51e6a0]
mov ecx, dword [0x51e69c]
mov edx, eax
sub edx, 0x509291e7
sub edx, 1
add edx, 0x509291e7
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, 0xba5aa4b3
mov ecx, 0xb2ed5364
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xa5c], eax
jmp 0x45bfe2
mov eax, dword [esi + 0xa68]
mov dword [esi + 0x798], eax
mov eax, esp
mov dword [esi + 0x79c], eax
mov ecx, dword [0x51e698]
mov eax, dword [0x51e694]
mov edx, ecx
sub edx, 0x62201ffb
sub edx, 1
add edx, 0x62201ffb
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [esi + 0xc52], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [esi + 0xc53], al
mov dword [esi + 0xc4c], 0x16fde033
mov eax, dword [esi + 0xc4c]
mov dword [esi + 0x794], eax
sub eax, 0x862408ba
je 0x43f9af
jmp 0x43ee9c
mov eax, dword [esi + 0x794]
sub eax, 0x88a443f2
je 0x441884
jmp 0x43eeb2
mov eax, dword [esi + 0x794]
sub eax, 0x8be59ab9
je 0x441900
jmp 0x43eec8
mov eax, dword [esi + 0x794]
sub eax, 0x9173770b
je 0x441bee
jmp 0x43eede
mov eax, dword [esi + 0x794]
sub eax, 0x979f0880
je 0x43f2ff
jmp 0x43eef4
push eax
mov eax, esp
mov dword [esi + 0xc54], eax
mov ecx, dword [0x51e698]
mov eax, dword [0x51e694]
mov edx, ecx
sub edx, 0xf8c12881
sub edx, 1
add edx, 0xf8c12881
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, 0xe31416c2
mov ecx, 0xe35915a1
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc4c], eax
jmp 0x441c32
mov dword [esi + 0xc4c], 0xccecb088
jmp 0x441c32
mov eax, dword [esi + 0xc5c]
mov ecx, dword [esi + 0xc60]
mov dword [eax], ecx
mov ecx, dword [0x51e698]
mov eax, dword [0x51e694]
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, 0x57897a50
mov ecx, 0x8be59ab9
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc4c], eax
jmp 0x441c32
mov ecx, dword [0x51e698]
mov eax, dword [0x51e694]
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, 0x73793d40
mov ecx, 0xedf94286
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc4c], eax
jmp 0x441c32
mov dword [esi + 0xc4c], 0x541adee3
jmp 0x441c32
jmp 0x43ee80
mov dword [esi + 0xa5c], 0xf5e4ad71
jmp 0x45bfe2
mov dword [esi + 0xa5c], 0x3744139
jmp 0x45bfe2
mov ecx, dword [0x51e6a0]
mov eax, dword [0x51e69c]
mov edx, ecx
sub edx, 0x4622c8d9
sub edx, 1
add edx, 0x4622c8d9
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, 0x2b47a945
mov ecx, 0x5c4f7f3e
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xa5c], eax
jmp 0x45bfe2
mov dword [esi + 0xa5c], 0x21f044cf
jmp 0x45bfe2
mov dword [esi + 0xa5c], 0xd9b05e0b
jmp 0x45bfe2
mov dword [esi + 0xa5c], 0xd3ff7ece
jmp 0x45bfe2
mov eax, dword [0x51e6a0]
mov ecx, dword [0x51e69c]
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, 0xf1c0fc1c
mov ecx, 0x353e388a
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xa5c], eax
jmp 0x45bfe2
mov eax, dword [0x51e6a0]
mov ecx, dword [0x51e69c]
mov edx, eax
sub edx, 0x65185297
sub edx, 1
add edx, 0x65185297
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, 0xc917426d
mov ecx, 0x6db2c8b7
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xa5c], eax
jmp 0x45bfe2
mov eax, dword [esi + 0xa64]
mov dword [esi + 0xa5c], 0x40970619
jmp 0x45bfe2
mov dword [esi + 0xa5c], 0xdc80758c
jmp 0x45bfe2
mov dword [esi + 0xa5c], 0x71f4c81c
jmp 0x45bfe2
jmp 0x43e0be
mov eax, dword [esi + 0x9f4]
mov dword [esi + 0x9ec], 0xc6c3bf9a
jmp 0x479e10
mov dword [esi + 0x9ec], 0xcb90857a
jmp 0x479e10
mov dword [esi + 0x9ec], 0x9eaba88d
jmp 0x479e10
mov ecx, dword [esi + 0x930]
mov eax, dword [esi + 0x9f4]
mov dword [eax], ecx
mov dword [esi + 0x9ec], 0xf73c5dfe
jmp 0x479e10
mov eax, esp
mov dword [esi + 0x620], eax
mov ecx, dword [0x51e6a0]
mov eax, dword [0x51e69c]
mov edx, ecx
add edx, 0x953492e3
sub edx, 1
sub edx, 0x953492e3
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [esi + 0xab2], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [esi + 0xab3], al
mov dword [esi + 0xaac], 0x7a22c751
mov eax, dword [esi + 0xaac]
mov dword [esi + 0x61c], eax
sub eax, 0x80b683f9
je 0x45fc10
jmp 0x45c0d0
mov eax, dword [esi + 0x61c]
sub eax, 0x815b6f53
je 0x47937d
jmp 0x45c0e6
mov eax, dword [esi + 0x61c]
sub eax, 0x85c39274
je 0x4656f7
jmp 0x45c0fc
mov eax, dword [esi + 0x61c]
sub eax, 0x8a2bf879
je 0x45cc64
jmp 0x45c112
mov eax, dword [esi + 0x61c]
sub eax, 0x8d204bbb
je 0x46a966
jmp 0x45c128
mov eax, dword [esi + 0x61c]
sub eax, 0x8dabe7cf
je 0x46a73f
jmp 0x45c13e
mov eax, dword [esi + 0x61c]
sub eax, 0x8f07c5d3
je 0x45ffa4
jmp 0x45c154
mov eax, dword [esi + 0x61c]
sub eax, 0x94224060
je 0x4627db
jmp 0x45c16a
mov eax, dword [esi + 0x61c]
sub eax, 0x99964342
je 0x45cdf4
jmp 0x45c180
mov eax, dword [esi + 0x61c]
sub eax, 0xa034d617
je 0x471408
jmp 0x45c196
mov eax, dword [esi + 0x61c]
sub eax, 0xa04be555
je 0x46bdb9
jmp 0x45c1ac
mov eax, dword [esi + 0x61c]
sub eax, 0xa0c0ccbc
je 0x46bf9c
jmp 0x45c1c2
mov eax, dword [esi + 0x61c]
sub eax, 0xa2fd972e
je 0x4713e4
jmp 0x45c1d8
mov eax, dword [esi + 0x61c]
sub eax, 0xa77e978a
je 0x47143b
jmp 0x45c1ee
mov eax, dword [esi + 0x61c]
sub eax, 0xa910be05
je 0x4600bd
jmp 0x45c204
mov eax, dword [esi + 0x61c]
sub eax, 0xac4a1f5f
je 0x460047
jmp 0x45c21a
mov eax, dword [esi + 0x61c]
sub eax, 0xaec200ad
je 0x46c2c3
jmp 0x45c230
mov eax, dword [esi + 0x61c]
sub eax, 0xaf0cfbd1
je 0x4713f9
push eax
mov eax, esp
mov dword [esi + 0xab4], eax
mov ecx, dword [0x51e6a0]
mov eax, dword [0x51e69c]
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, 0xba5aa4b3
mov ecx, 0xb2ed5364
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xaac], eax
jmp 0x479dc7
mov eax, dword [esi + 0xab8]
mov dword [esi + 0x614], eax
mov eax, esp
mov dword [esi + 0x618], eax
mov ecx, dword [0x51e698]
mov eax, dword [0x51e694]
mov edx, ecx
add edx, 0x3d3dabaa
sub edx, 1
sub edx, 0x3d3dabaa
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [esi + 0xc3a], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [esi + 0xc3b], al
mov dword [esi + 0xc34], 0x16fde033
mov eax, dword [esi + 0xc34]
mov dword [esi + 0x610], eax
sub eax, 0x862408ba
je 0x45d970
jmp 0x45ce6d
mov eax, dword [esi + 0x610]
sub eax, 0x88a443f2
je 0x45f87a
jmp 0x45ce83
mov eax, dword [esi + 0x610]
sub eax, 0x8be59ab9
je 0x45f8fe
jmp 0x45ce99
mov eax, dword [esi + 0x610]
sub eax, 0x9173770b
je 0x45fbaa
jmp 0x45ceaf
mov eax, dword [esi + 0x610]
sub eax, 0x979f0880
je 0x45d312
jmp 0x45cec5
mov eax, dword [esi + 0x610]
sub eax, 0xadc084a8
je 0x45fb60
jmp 0x45cedb
mov eax, dword [esi + 0x610]
sub eax, 0xb2c5d74d
je 0x45fbf3
jmp 0x45cef1
mov eax, dword [esi + 0x610]
sub eax, 0xbde1ef09
je 0x45d602
jmp 0x45cf07
mov eax, dword [esi + 0x610]
sub eax, 0xc69ea595
je 0x45d585
jmp 0x45cf1d
push eax
mov eax, esp
mov dword [esi + 0xc3c], eax
mov eax, dword [0x51e698]
mov ecx, dword [0x51e694]
mov edx, eax
sub edx, 0x129aaba2
sub edx, 1
add edx, 0x129aaba2
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, 0xe31416c2
mov ecx, 0xe35915a1
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc34], eax
jmp 0x45fbee
mov dword [esi + 0xc34], 0x5219443c
jmp 0x45fbee
mov eax, dword [0x51e698]
mov ecx, dword [0x51e694]
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, 0x151052bf
mov ecx, 0x43c66c8a
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc34], eax
jmp 0x45fbee
mov dword [esi + 0xc34], 0xccecb088
jmp 0x45fbee
mov eax, dword [esi + 0xc44]
mov ecx, dword [esi + 0xc48]
mov dword [eax], ecx
mov ecx, dword [0x51e698]
mov eax, dword [0x51e694]
mov edx, ecx
sub edx, 0xa9deef1d
sub edx, 1
add edx, 0xa9deef1d
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, 0x57897a50
mov ecx, 0x8be59ab9
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc34], eax
jmp 0x45fbee
mov eax, dword [0x51e698]
mov ecx, dword [0x51e694]
mov edx, eax
sub edx, 0x5d6445a6
sub edx, 1
add edx, 0x5d6445a6
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, 0x73793d40
mov ecx, 0xedf94286
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc34], eax
jmp 0x45fbee
mov dword [esi + 0xc34], 0xca5cf49e
jmp 0x45fbee
mov dword [esi + 0xc34], 0x541adee3
jmp 0x45fbee
jmp 0x45ce51
mov eax, dword [esi + 0x618]
mov ecx, dword [esi + 0xc40]
mov esp, eax
mov dword [esi + 0xaac], 0x80b683f9
jmp 0x479dc7
mov dword [esi + 0xaac], 0xf5e4ad71
jmp 0x479dc7
mov dword [esi + 0xaac], 0x3744139
jmp 0x479dc7
mov ecx, dword [0x51e6a0]
mov eax, dword [0x51e69c]
mov edx, ecx
add edx, 0xb61d4b37
sub edx, 1
sub edx, 0xb61d4b37
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, 0xd954f8b9
mov ecx, 0xa910be05
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xaac], eax
jmp 0x479dc7
mov eax, dword [esi + 0xacc]
mov eax, dword [eax]
mov dword [esi + 0x5e8], eax
mov eax, dword [esi + 0xabc]
mov dword [esi + 0x5ec], eax
mov eax, esp
mov dword [esi + 0x5f0], eax
mov ecx, dword [0x51e678]
mov eax, dword [0x51e674]
mov edx, ecx
sub edx, 0xc47abd53
sub edx, 1
add edx, 0xc47abd53
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [esi + 0xe56], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [esi + 0xe57], al
mov dword [esi + 0xe50], 0xfca0e0fa
mov eax, dword [esi + 0xe50]
mov dword [esi + 0x5e4], eax
sub eax, 0x8138ecf4
je 0x461ece
jmp 0x460144
mov eax, dword [esi + 0x5e4]
sub eax, 0x821ad25f
je 0x462605
jmp 0x46015a
mov eax, dword [esi + 0x5e4]
sub eax, 0x9003fcb6
je 0x4608a4
jmp 0x460170
mov eax, dword [0x51e678]
mov ecx, dword [0x51e674]
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, 0x3c61ecfa
mov ecx, 0x2b1b0447
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xe50], eax
jmp 0x4626d9
mov ecx, dword [0x51e678]
mov eax, dword [0x51e674]
mov edx, ecx
sub edx, 0xfd9ae0eb
sub edx, 1
add edx, 0xfd9ae0eb
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, 0xc1cb3f8
mov ecx, 0xdda2175e
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xe50], eax
jmp 0x4626d9
mov dword [esi + 0xe50], 0x6d08bfbf
jmp 0x4626d9
jmp 0x460128
mov eax, dword [0x51e6a0]
mov ecx, dword [0x51e69c]
mov edx, eax
sub edx, 0xc969e365
sub edx, 1
add edx, 0xc969e365
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, 0x2b47a945
mov ecx, 0x5c4f7f3e
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xaac], eax
jmp 0x479dc7
mov dword [esi + 0xaac], 0x21f044cf
jmp 0x479dc7
mov dword [esi + 0xaac], 0xd9b05e0b
jmp 0x479dc7
mov dword [esi + 0xaac], 0xd3ff7ece
jmp 0x479dc7
mov ecx, dword [0x51e6a0]
mov eax, dword [0x51e69c]
mov edx, ecx
sub edx, 0x98a7035e
sub edx, 1
add edx, 0x98a7035e
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, 0xf1c0fc1c
mov ecx, 0x353e388a
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xaac], eax
jmp 0x479dc7
mov ecx, dword [0x51e6a0]
mov eax, dword [0x51e69c]
mov edx, ecx
add edx, 0x6571584f
sub edx, 1
sub edx, 0x6571584f
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, 0xc917426d
mov ecx, 0x6db2c8b7
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xaac], eax
jmp 0x479dc7
mov ecx, dword [0x51e6a0]
mov eax, dword [0x51e69c]
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, 0x9ea124b
mov ecx, 0x3f8f2238
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xaac], eax
jmp 0x479dc7
mov eax, dword [esi + 0xab4]
mov dword [esi + 0xaac], 0x40970619
jmp 0x479dc7
mov dword [esi + 0xaac], 0xdc80758c
jmp 0x479dc7
mov dword [esi + 0xaac], 0xf9f463b
jmp 0x479dc7
mov dword [esi + 0xaac], 0x71f4c81c
jmp 0x479dc7
jmp 0x45c0b4
jmp 0x41f5e4
mov ecx, dword [esi + 0x938]
mov eax, dword [esi + 0xa08]
mov esp, ecx
mov dword [esi + 0x9bc], eax
mov eax, dword [0x51e6b0]
mov ecx, dword [0x51e6ac]
mov edx, eax
sub edx, 0xae1a43bd
sub edx, 1
add edx, 0xae1a43bd
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, 0xf4c75895
mov ecx, 0x2c5f4701
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov eax, dword [esi + 0x974]
mov ecx, dword [esi + 0x9bc]
mov dword [eax], ecx
mov eax, dword [esi + 0x974]
cmp dword [eax], 0
setne al
and al, 1
mov byte [esi + 0x9c3], al
mov ecx, dword [0x51e6b0]
mov eax, dword [0x51e6ac]
mov edx, ecx
sub edx, 0xc79cec33
sub edx, 1
add edx, 0xc79cec33
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, 0x9d90f1ff
mov ecx, 0x2b0c4352
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov dword [esi + 0x940], 0x8114276b
jmp 0x4d51e8
mov edx, dword [esi + 0x97c]
mov eax, 0xb396adcc
mov ecx, 0xaea3d86
cmp dword [edx], 0
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov eax, dword [esi + 0x97c]
mov ecx, dword [eax]
mov eax, dword [esi + 0x980]
mov dword [eax], ecx
mov eax, dword [esi + 0x980]
call dword [eax]
mov eax, dword [esi + 0x974]
mov eax, dword [eax]
sub esp, 8
mov dword [esp], eax
mov dword [esp + 4], 0xffffffff
call dword [sym.imp.KERNEL32.dll_WaitForSingleObject]
mov eax, dword [esi + 0x974]
mov eax, dword [eax]
mov dword [esi + 0x9c4], eax
mov eax, dword [0x51e6b0]
mov ecx, dword [0x51e6ac]
mov edx, eax
add edx, 0xcacddbca
sub edx, 1
sub edx, 0xcacddbca
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, 0x7492ba4b
mov ecx, 0x4317ac5f
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov dword [esi + 0x940], 0xc7396392
jmp 0x4d51e8
mov ecx, dword [0x51e6b0]
mov eax, dword [0x51e6ac]
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, 0xe263e44a
mov ecx, 0x3d32c67f
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov eax, dword [0x51e6b0]
mov ecx, dword [0x51e6ac]
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, 0x8dc85b40
mov ecx, 0x714acb9a
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov eax, dword [0x51e6b0]
mov ecx, dword [0x51e6ac]
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, 0xd735fa06
mov ecx, 0xe5bdbed0
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov dword [esi + 0x940], 0xa19fd675
jmp 0x4d51e8
mov eax, dword [0x51e6b0]
mov ecx, dword [0x51e6ac]
mov edx, eax
sub edx, 0xe35509b4
sub edx, 1
add edx, 0xe35509b4
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, 0x81ebbeb4
mov ecx, 0x2fb0b33d
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov eax, dword [esi + 0x950]
mov dword [eax], 0xefb8ee8
mov eax, dword [0x51e6b0]
mov ecx, dword [0x51e6ac]
mov edx, eax
add edx, 0xedc747eb
sub edx, 1
sub edx, 0xedc747eb
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, 0xe31efa76
mov ecx, 0xac9b779
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x940], eax
jmp 0x4d51e8
mov eax, dword [esi + 0x958]
mov dword [eax], 1
mov dword [esi + 0x940], 0x1f225c48
jmp 0x4d51e8
mov dword [esi + 0x940], 0x7b77d04f
jmp 0x4d51e8
mov dword [esi + 0x940], 0x48bc0fef
jmp 0x4d51e8
mov eax, dword [esi + 0x954]
mov dword [eax], 0xefb8ec5
mov eax, dword [esi + 0x954]
mov dword [esi + 0x940], 0xa7b9a725
jmp 0x4d51e8
mov dword [esi + 0x940], 0xc29bc247
jmp 0x4d51e8
mov dword [esi + 0x940], 0xf6ac8dc0
jmp 0x4d51e8
mov dword [esi + 0x940], 0x1920e4ca
jmp 0x4d51e8
mov eax, dword [esi + 0x974]
mov ecx, dword [esi + 0x9bc]
mov dword [eax], ecx
mov eax, dword [esi + 0x974]
mov dword [esi + 0x940], 0xab64695d
jmp 0x4d51e8
mov eax, dword [esi + 0x974]
mov ecx, dword [eax]
lea eax, str.WindowsHandle
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00417970
add esp, 8
mov ecx, eax
mov eax, dword [esi + 0x97c]
mov dword [eax], ecx
mov dword [esi + 0x940], 0xa0c31f0
jmp 0x4d51e8
mov dword [esi + 0x940], 0x714acb9a
jmp 0x4d51e8
mov dword [esi + 0x940], 0x8cbf70fd
jmp 0x4d51e8
jmp 0x41a8ab