Function at 0x10001000
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x80
mov esi, esp
mov dword [esi + 0xc], ecx
lea eax, [ebp + 8]
mov dword [esi + 0x10], eax
mov eax, dword [0x10083280]
xor eax, ebp
mov dword [esi + 0x78], eax
mov dword [esi + 0x14], 0xad1372f
mov eax, dword [esi + 0x14]
mov dword [esi + 8], eax
sub eax, 0x808fc916
je 0x100019a4
jmp 0x10001041
mov eax, dword [esi + 8]
sub eax, 0x838271f2
je 0x10001d31
jmp 0x10001054
mov eax, dword [esi + 8]
sub eax, 0x856fba25
je 0x100018cb
jmp 0x10001067
mov eax, dword [esi + 8]
sub eax, 0x8930e368
je 0x10002026
jmp 0x1000107a
mov eax, dword [esi + 8]
sub eax, 0x8b79dd9f
je 0x10001ecf
jmp 0x1000108d
mov eax, dword [esi + 8]
sub eax, 0x950443f7
je 0x10001850
jmp 0x100010a0
mov eax, dword [esi + 8]
sub eax, 0x96e46457
je 0x10001e88
jmp 0x100010b3
mov eax, dword [esi + 8]
sub eax, 0x974c9fbe
je 0x10001d99
jmp 0x100010c6
mov eax, dword [esi + 8]
sub eax, 0x97721d18
je 0x10001c68
jmp 0x100010d9
mov eax, dword [esi + 8]
sub eax, 0x98e6cd5a
je 0x10001b86
jmp 0x100010ec
mov eax, dword [esi + 8]
sub eax, 0x9cbe5016
je 0x10001b9b
jmp 0x100010ff
mov eax, dword [esi + 8]
sub eax, 0x9dfaa7c7
je 0x10002045
jmp 0x10001112
mov eax, dword [esi + 8]
sub eax, 0xa7cf1d3f
je 0x1000201a
jmp 0x10001125
mov eax, dword [esi + 8]
sub eax, 0xad823157
je 0x1000189e
jmp 0x10001138
mov eax, dword [esi + 8]
sub eax, 0xae743671
je 0x10001d64
jmp 0x1000114b
mov eax, dword [esi + 8]
sub eax, 0xaea41b52
je 0x100016e9
jmp 0x1000115e
mov eax, dword [esi + 8]
sub eax, 0xb04e5f0e
je 0x10001ea0
jmp 0x10001171
mov eax, dword [esi + 8]
sub eax, 0xb7556322
je 0x10001d85
jmp 0x10001184
mov eax, dword [esi + 8]
sub eax, 0xbba541d5
je 0x10001ef6
jmp 0x10001197
mov eax, dword [esi + 8]
sub eax, 0xbcc314a7
je 0x10001eb4
jmp 0x100011aa
mov eax, dword [esi + 8]
sub eax, 0xc321b5cc
je 0x10001aa2
jmp 0x100011bd
mov eax, dword [esi + 8]
sub eax, 0xc9b1d30a
je 0x10001a1b
jmp 0x100011d0
mov eax, dword [esi + 8]
sub eax, 0xcec5b602
je 0x100017a8
jmp 0x100011e3
mov eax, dword [esi + 8]
sub eax, 0xd05d1f7d
je 0x1000173d
jmp 0x100011f6
mov eax, dword [esi + 8]
sub eax, 0xd5893134
je 0x1000163b
jmp 0x10001209
mov eax, dword [esi + 8]
sub eax, 0xd86524a4
je 0x100018bf
jmp 0x1000121c
mov eax, dword [esi + 8]
sub eax, 0xdc0533d6
je 0x10001695
jmp 0x1000122f
mov eax, dword [esi + 8]
sub eax, 0xdf738142
je 0x10002116
jmp 0x10001242
mov eax, dword [esi + 8]
sub eax, 0xeb14f205
je 0x10001f7d
jmp 0x10001255
mov eax, dword [esi + 8]
sub eax, 0xed3e2213
je 0x10001cdb
jmp 0x10001268
mov eax, dword [esi + 8]
sub eax, 0xef152487
je 0x1000207f
jmp 0x1000127b
mov eax, dword [esi + 8]
sub eax, 0xf10b8c55
je 0x10001989
jmp 0x1000128e
mov eax, dword [esi + 8]
sub eax, 0xf64de80d
je 0x10001d58
jmp 0x100012a1
mov eax, dword [esi + 8]
sub eax, 0xf769e30a
je 0x10001e0c
jmp 0x100012b4
mov eax, dword [esi + 8]
sub eax, 0xfa289ea6
je 0x100019b0
jmp 0x100012c7
mov eax, dword [esi + 8]
sub eax, 0xb25db6
je 0x1000158b
jmp 0x100012da
mov eax, dword [esi + 8]
sub eax, 0x3093bc6
je 0x10001710
jmp 0x100012ed
mov eax, dword [esi + 8]
sub eax, 0x9212ba1
je 0x10001e94
jmp 0x10001300
mov eax, dword [esi + 8]
sub eax, 0xa93eea3
je 0x1000212b
jmp 0x10001313
mov eax, dword [esi + 8]
sub eax, 0xad1372f
je 0x10001506
jmp 0x10001326
mov eax, dword [esi + 8]
sub eax, 0x10243bc7
je 0x1000171c
jmp 0x10001339
mov eax, dword [esi + 8]
sub eax, 0x14676807
je 0x10002107
jmp 0x1000134c
mov eax, dword [esi + 8]
sub eax, 0x16eddbcf
je 0x100020a2
jmp 0x1000135f
mov eax, dword [esi + 8]
sub eax, 0x21f3a6f8
je 0x1000162f
jmp 0x10001372
mov eax, dword [esi + 8]
sub eax, 0x2e6f6372
je 0x100020cc
jmp 0x10001385
mov eax, dword [esi + 8]
sub eax, 0x2e962710
je 0x10001edb
jmp 0x10001398
mov eax, dword [esi + 8]
sub eax, 0x36101d32
je 0x100020bd
jmp 0x100013ab
mov eax, dword [esi + 8]
sub eax, 0x380fd733
je 0x1000208e
jmp 0x100013be
mov eax, dword [esi + 8]
sub eax, 0x3cba6393
je 0x100017f6
jmp 0x100013d1
mov eax, dword [esi + 8]
sub eax, 0x3f95eefe
je 0x10001a96
jmp 0x100013e4
mov eax, dword [esi + 8]
sub eax, 0x3fd212ff
je 0x100020ae
jmp 0x100013f7
mov eax, dword [esi + 8]
sub eax, 0x41023333
je 0x1000164f
jmp 0x1000140a
mov eax, dword [esi + 8]
sub eax, 0x416a5c1a
je 0x10001518
jmp 0x1000141d
mov eax, dword [esi + 8]
sub eax, 0x4509ed92
je 0x10001f0a
jmp 0x10001430
mov eax, dword [esi + 8]
sub eax, 0x488ae2ca
je 0x100018aa
jmp 0x10001443
mov eax, dword [esi + 8]
sub eax, 0x4cf2c9a0
je 0x100018df
jmp 0x10001456
mov eax, dword [esi + 8]
sub eax, 0x4f71b80b
je 0x10001802
jmp 0x10001469
mov eax, dword [esi + 8]
sub eax, 0x4fab1e61
je 0x10001d3d
jmp 0x1000147c
mov eax, dword [esi + 8]
sub eax, 0x5a0de6a4
je 0x10001b7a
jmp 0x1000148f
mov eax, dword [esi + 8]
sub eax, 0x5bbef434
je 0x10001c0e
jmp 0x100014a2
mov eax, dword [esi + 8]
sub eax, 0x67d7e12a
je 0x100020fb
jmp 0x100014b5
mov eax, dword [esi + 8]
sub eax, 0x6ec3a314
je 0x10001af0
jmp 0x100014c8
mov eax, dword [esi + 8]
sub eax, 0x7a8d0c6d
je 0x1000192d
jmp 0x100014db
mov eax, dword [esi + 8]
sub eax, 0x7c08a1ce
je 0x100016f5
jmp 0x100014ee
mov eax, dword [esi + 8]
sub eax, 0x7eafc4d8
je 0x10001c5c
push eax
mov eax, esp
mov dword [esi + 0x30], eax
mov dword [esi + 0x14], 0x416a5c1a
jmp 0x10002156
mov ecx, dword [0x100847ec]
mov eax, dword [0x100847e8]
mov edx, ecx
sub edx, 0x75d94af4
sub edx, 1
add edx, 0x75d94af4
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, 0x9dfaa7c7
mov ecx, 0xb25db6
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x10002156
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 0x10]
push eax
mov edx, esp
mov dword [esi + 0x34], edx
push eax
mov edx, esp
mov dword [esi + 0x38], edx
push eax
mov edx, esp
mov dword [esi + 0x3c], edx
mov edx, dword [ecx]
mov dword [esi + 0x40], edx
mov edx, ecx
add edx, 0x18
mov dword [esi + 0x44], edx
add ecx, 0x38
mov dword [esi + 0x48], ecx
mov dword [esi + 0x2c], eax
mov dword [esi + 0x28], 0x54e
mov dword [esi + 0x24], 0x1437
mov byte [esi + 0x23], 1
movsd xmm0, qword [0x10031190]
movsd qword [esi + 0x18], xmm0
mov eax, dword [esi + 0x30]
mov dword [eax], 0x34
mov eax, dword [0x100847ec]
mov ecx, dword [0x100847e8]
mov edx, eax
add edx, 0x27ceb9b5
sub edx, 1
sub edx, 0x27ceb9b5
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, 0x9dfaa7c7
mov ecx, 0x21f3a6f8
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x10002156
mov dword [esi + 0x14], 0xd5893134
jmp 0x10002156
mov eax, dword [esi + 0x30]
mov eax, dword [eax]
mov dword [esi + 0x4c], eax
mov dword [esi + 0x14], 0x41023333
jmp 0x10002156
mov eax, dword [0x100847ec]
mov ecx, dword [0x100847e8]
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, 0xef152487
mov ecx, 0xdc0533d6
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x10002156
mov eax, dword [esi + 0x4c]
cmp eax, 0
setg al
and al, 1
mov byte [esi + 0x53], al
mov eax, dword [0x100847ec]
mov ecx, dword [0x100847e8]
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, 0xef152487
mov ecx, 0xaea41b52
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x10002156
mov dword [esi + 0x14], 0x7c08a1ce
jmp 0x10002156
mov dl, byte [esi + 0x53]
mov eax, 0x488ae2ca
mov ecx, 0x3093bc6
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x10002156
mov dword [esi + 0x14], 0x10243bc7
jmp 0x10002156
mov eax, dword [esi + 0x30]
mov eax, dword [eax]
add eax, 0xfe68f1fc
add eax, 0xffffffff
sub eax, 0xfe68f1fc
mov dword [esi + 0x54], eax
mov dword [esi + 0x14], 0xd05d1f7d
jmp 0x10002156
mov ecx, dword [0x100847ec]
mov eax, dword [0x100847e8]
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, 0x380fd733
mov ecx, 0xcec5b602
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x10002156
mov eax, dword [esi + 0x30]
mov ecx, dword [esi + 0x54]
mov dword [eax], ecx
mov eax, dword [0x100847ec]
mov ecx, dword [0x100847e8]
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, 0x380fd733
mov ecx, 0x3cba6393
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x10002156
mov dword [esi + 0x14], 0x4f71b80b
jmp 0x10002156
mov eax, dword [0x100847ec]
mov ecx, dword [0x100847e8]
mov edx, eax
add edx, 0xa6d5ec82
sub edx, 1
sub edx, 0xa6d5ec82
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, 0x16eddbcf
mov ecx, 0x950443f7
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x10002156
mov eax, dword [0x100847ec]
mov ecx, dword [0x100847e8]
mov edx, eax
sub edx, 0xb7fe8f29
sub edx, 1
add edx, 0xb7fe8f29
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, 0x16eddbcf
mov ecx, 0xad823157
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x10002156
mov dword [esi + 0x14], 0xd5893134
jmp 0x10002156
mov eax, dword [esi + 0x34]
mov dword [eax], 0x18
mov dword [esi + 0x14], 0xd86524a4
jmp 0x10002156
mov dword [esi + 0x14], 0x856fba25
jmp 0x10002156
mov eax, dword [esi + 0x34]
mov eax, dword [eax]
mov dword [esi + 0x58], eax
mov dword [esi + 0x14], 0x4cf2c9a0
jmp 0x10002156
mov eax, dword [0x100847ec]
mov ecx, dword [0x100847e8]
mov edx, eax
sub edx, 0x531454af
sub edx, 1
add edx, 0x531454af
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, 0x3fd212ff
mov ecx, 0x7a8d0c6d
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x10002156
mov eax, dword [esi + 0x58]
cmp eax, 0
setg al
and al, 1
mov byte [esi + 0x5f], al
mov eax, dword [0x100847ec]
mov ecx, dword [0x100847e8]
mov edx, eax
add edx, 0x1b7fa02
sub edx, 1
sub edx, 0x1b7fa02
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, 0x3fd212ff
mov ecx, 0xf10b8c55
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x10002156
mov dl, byte [esi + 0x5f]
mov eax, 0x98e6cd5a
mov ecx, 0x808fc916
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x10002156
mov dword [esi + 0x14], 0xfa289ea6
jmp 0x10002156
mov ecx, dword [0x100847ec]
mov eax, dword [0x100847e8]
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, 0x36101d32
mov ecx, 0xc9b1d30a
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x10002156
mov eax, dword [esi + 0x34]
mov eax, dword [eax]
mov dword [esi + 0x60], eax
mov ecx, dword [0x100847ec]
mov eax, dword [0x100847e8]
mov edx, ecx
add edx, 0xf0c6fafe
sub edx, 1
sub edx, 0xf0c6fafe
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, 0x36101d32
mov ecx, 0x3f95eefe
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x10002156
mov dword [esi + 0x14], 0xc321b5cc
jmp 0x10002156
mov eax, dword [0x100847ec]
mov ecx, dword [0x100847e8]
mov edx, eax
add edx, 0x1482f241
sub edx, 1
sub edx, 0x1482f241
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, 0x2e6f6372
mov ecx, 0x6ec3a314
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x10002156
mov ecx, dword [esi + 0x60]
sub ecx, 0xd7f0669c
add ecx, 0xffffffff
add ecx, 0xd7f0669c
mov eax, dword [esi + 0x34]
mov dword [eax], ecx
mov ecx, dword [0x100847ec]
mov eax, dword [0x100847e8]
mov edx, ecx
sub edx, 0xade18e4b
sub edx, 1
add edx, 0xade18e4b
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, 0x2e6f6372
mov ecx, 0x5a0de6a4
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x10002156
mov dword [esi + 0x14], 0x856fba25
jmp 0x10002156
mov eax, dword [esi + 0x38]
mov dword [eax], 0x61
mov dword [esi + 0x14], 0x9cbe5016
jmp 0x10002156
mov ecx, dword [0x100847ec]
mov eax, dword [0x100847e8]
mov edx, ecx
add edx, 0x19837085
sub edx, 1
sub edx, 0x19837085
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, 0x67d7e12a
mov ecx, 0x5bbef434
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x10002156
mov eax, dword [0x100847ec]
mov ecx, dword [0x100847e8]
mov edx, eax
sub edx, 0x96a058f7
sub edx, 1
add edx, 0x96a058f7
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, 0x67d7e12a
mov ecx, 0x7eafc4d8
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x10002156
mov ecx, dword [0x100847ec]
mov eax, dword [0x100847e8]
mov edx, ecx
add edx, 0x1b0dc044
sub edx, 1
sub edx, 0x1b0dc044
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, 0x14676807
mov ecx, 0xed3e2213
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x10002156
mov eax, dword [esi + 0x38]
mov eax, dword [eax]
mov dword [esi + 0x64], eax
mov eax, dword [0x100847ec]
mov ecx, dword [0x100847e8]
mov edx, eax
sub edx, 0x700ecc55
sub edx, 1
add edx, 0x700ecc55
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, 0x14676807
mov ecx, 0x838271f2
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x10002156
mov dword [esi + 0x14], 0x4fab1e61
jmp 0x10002156
mov edx, dword [esi + 0x64]
mov eax, 0x974c9fbe
mov ecx, 0xf64de80d
cmp edx, 0
cmovg eax, ecx
mov dword [esi + 0x14], eax
jmp 0x10002156
mov dword [esi + 0x14], 0xae743671
jmp 0x10002156
mov eax, dword [esi + 0x38]
mov eax, dword [eax]
sub eax, 0xbdd21764
add eax, 0xffffffff
add eax, 0xbdd21764
mov dword [esi + 0x68], eax
mov dword [esi + 0x14], 0xb7556322
jmp 0x10002156
mov eax, dword [esi + 0x38]
mov ecx, dword [esi + 0x68]
mov dword [eax], ecx
mov dword [esi + 0x14], 0x97721d18
jmp 0x10002156
mov ecx, dword [0x100847ec]
mov eax, dword [0x100847e8]
mov edx, ecx
sub edx, 0xe10974a9
sub edx, 1
add edx, 0xe10974a9
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, 0xdf738142
mov ecx, 0xf769e30a
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x10002156
mov eax, dword [esi + 0x3c]
mov dword [eax], 0x12
mov ecx, dword [0x100847ec]
mov eax, dword [0x100847e8]
mov edx, ecx
add edx, 0x365e9231
sub edx, 1
sub edx, 0x365e9231
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, 0xdf738142
mov ecx, 0x96e46457
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x10002156
mov dword [esi + 0x14], 0x9212ba1
jmp 0x10002156
mov dword [esi + 0x14], 0xb04e5f0e
jmp 0x10002156
mov eax, dword [esi + 0x3c]
mov eax, dword [eax]
mov dword [esi + 0x6c], eax
mov dword [esi + 0x14], 0xbcc314a7
jmp 0x10002156
mov edx, dword [esi + 0x6c]
mov eax, 0x4509ed92
mov ecx, 0x8b79dd9f
cmp edx, 0
cmovg eax, ecx
mov dword [esi + 0x14], eax
jmp 0x10002156
mov dword [esi + 0x14], 0x2e962710
jmp 0x10002156
mov eax, dword [esi + 0x3c]
mov eax, dword [eax]
xor ecx, ecx
sub ecx, 0xffffffff
sub eax, ecx
mov dword [esi + 0x70], eax
mov dword [esi + 0x14], 0xbba541d5
jmp 0x10002156
mov eax, dword [esi + 0x3c]
mov ecx, dword [esi + 0x70]
mov dword [eax], ecx
mov dword [esi + 0x14], 0xb04e5f0e
jmp 0x10002156
mov ecx, dword [0x100847ec]
mov eax, dword [0x100847e8]
mov edx, ecx
add edx, 0x1f8658c8
sub edx, 1
sub edx, 0x1f8658c8
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, 0xa93eea3
mov ecx, 0xeb14f205
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x10002156
mov ecx, dword [esi + 0x40]
lea eax, [0x10031280]
sub esp, 4
mov dword [esp], eax
call fcn.10019340
mov ecx, dword [esi + 0x44]
call fcn.10019590
mov ecx, dword [esi + 0x48]
call fcn.10019590
mov eax, dword [esi + 0x10]
mov dword [esi + 0x74], eax
mov ecx, dword [0x100847ec]
mov eax, dword [0x100847e8]
mov edx, ecx
sub edx, 0xed8e6b8f
sub edx, 1
add edx, 0xed8e6b8f
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, 0xa93eea3
mov ecx, 0xa7cf1d3f
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x10002156
mov dword [esi + 0x14], 0x8930e368
jmp 0x10002156
mov eax, dword [esi + 0x74]
mov eax, dword [eax]
mov dword [esi + 4], eax
mov ecx, dword [esi + 0x78]
xor ecx, ebp
call fcn.10023a30
mov eax, dword [esi + 4]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0x64
mov eax, dword [esi + 0xc]
mov dword [esi + 0x2c], eax
mov dword [esi + 0x28], 0x54e
mov dword [esi + 0x24], 0x1437
mov byte [esi + 0x23], 1
movsd xmm0, qword [0x10031190]
movsd qword [esi + 0x18], xmm0
mov eax, dword [esi + 0x30]
mov dword [eax], 0x34
mov dword [esi + 0x14], 0xb25db6
jmp 0x10002156
mov eax, dword [esi + 0x4c]
mov dword [esi + 0x14], 0xdc0533d6
jmp 0x10002156
mov eax, dword [esi + 0x30]
mov ecx, dword [esi + 0x54]
mov dword [eax], ecx
mov dword [esi + 0x14], 0xcec5b602
jmp 0x10002156
mov dword [esi + 0x14], 0x950443f7
jmp 0x10002156
mov eax, dword [esi + 0x58]
mov dword [esi + 0x14], 0x7a8d0c6d
jmp 0x10002156
mov eax, dword [esi + 0x34]
mov dword [esi + 0x14], 0xc9b1d30a
jmp 0x10002156
mov eax, dword [esi + 0x60]
mov eax, dword [esi + 0x60]
mov eax, dword [esi + 0x60]
mov eax, dword [esi + 0x60]
mov ecx, dword [esi + 0x60]
sub ecx, 0xddac33e6
add ecx, 0xffffffff
add ecx, 0xddac33e6
mov eax, dword [esi + 0x34]
mov dword [eax], ecx
mov dword [esi + 0x14], 0x6ec3a314
jmp 0x10002156
mov dword [esi + 0x14], 0x5bbef434
jmp 0x10002156
mov eax, dword [esi + 0x38]
mov dword [esi + 0x14], 0xed3e2213
jmp 0x10002156
mov eax, dword [esi + 0x3c]
mov dword [eax], 0x12
mov dword [esi + 0x14], 0xf769e30a
jmp 0x10002156
mov ecx, dword [esi + 0x40]
lea eax, [0x10031280]
sub esp, 4
mov dword [esp], eax
call fcn.10019340
mov ecx, dword [esi + 0x44]
call fcn.10019590
mov ecx, dword [esi + 0x48]
call fcn.10019590
mov dword [esi + 0x14], 0xeb14f205
jmp 0x1000102b