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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x98
mov esi, esp
mov dword [esi + 8], ecx
lea eax, [ebp + 8]
mov dword [esi + 0xc], eax
mov eax, dword [0x43f080]
xor eax, ebp
mov dword [esi + 0x90], eax
mov dword [esi + 0x10], 0x9e55105b
mov eax, dword [esi + 0x10]
mov dword [esi + 4], eax
sub eax, 0x813a0c8b
je 0x4034bb
jmp 0x401c34
mov eax, dword [esi + 4]
sub eax, 0x81ea46bf
je 0x402d26
jmp 0x401c47
mov eax, dword [esi + 4]
sub eax, 0x826e5d35
je 0x40363b
jmp 0x401c5a
mov eax, dword [esi + 4]
sub eax, 0x82b17590
je 0x403532
jmp 0x401c6d
mov eax, dword [esi + 4]
sub eax, 0x830d0b24
je 0x4035a0
jmp 0x401c80
mov eax, dword [esi + 4]
sub eax, 0x8741e939
je 0x40255f
jmp 0x401c93
mov eax, dword [esi + 4]
sub eax, 0x8d03a79f
je 0x402ef2
jmp 0x401ca6
mov eax, dword [esi + 4]
sub eax, 0x8d8879d2
je 0x402846
jmp 0x401cb9
mov eax, dword [esi + 4]
sub eax, 0x924ed271
je 0x402ba2
jmp 0x401ccc
mov eax, dword [esi + 4]
sub eax, 0x9613efa0
je 0x40293c
jmp 0x401cdf
mov eax, dword [esi + 4]
sub eax, 0x963c97d1
je 0x402ae8
jmp 0x401cf2
mov eax, dword [esi + 4]
sub eax, 0x996a2459
je 0x4034a4
jmp 0x401d05
mov eax, dword [esi + 4]
sub eax, 0x9cccc3ac
je 0x402439
jmp 0x401d18
mov eax, dword [esi + 4]
sub eax, 0x9d2610ed
je 0x403550
jmp 0x401d2b
mov eax, dword [esi + 4]
sub eax, 0x9e55105b
je 0x4022d4
jmp 0x401d3e
mov eax, dword [esi + 4]
sub eax, 0xa6891b48
je 0x403418
jmp 0x401d51
mov eax, dword [esi + 4]
sub eax, 0xa9b93487
je 0x402c7e
jmp 0x401d64
mov eax, dword [esi + 4]
sub eax, 0xab835194
je 0x402a75
jmp 0x401d77
mov eax, dword [esi + 4]
sub eax, 0xad850ca7
je 0x402fe8
jmp 0x401d8a
mov eax, dword [esi + 4]
sub eax, 0xaf1dc4c8
je 0x402970
jmp 0x401d9d
mov eax, dword [esi + 4]
sub eax, 0xb171e6f2
je 0x4032e3
jmp 0x401db0
mov eax, dword [esi + 4]
sub eax, 0xb6c57c0f
je 0x402653
jmp 0x401dc3
mov eax, dword [esi + 4]
sub eax, 0xb95999af
je 0x402ce9
jmp 0x401dd6
mov eax, dword [esi + 4]
sub eax, 0xba20c7bc
je 0x4026f9
jmp 0x401de9
mov eax, dword [esi + 4]
sub eax, 0xbad1ad32
je 0x4035df
jmp 0x401dfc
mov eax, dword [esi + 4]
sub eax, 0xbe0f3ec8
je 0x4023c6
jmp 0x401e0f
mov eax, dword [esi + 4]
sub eax, 0xc7fb6daa
je 0x4031b6
jmp 0x401e22
mov eax, dword [esi + 4]
sub eax, 0xc9b657c4
je 0x4032a8
jmp 0x401e35
mov eax, dword [esi + 4]
sub eax, 0xca7d6dd3
je 0x402686
jmp 0x401e48
mov eax, dword [esi + 4]
sub eax, 0xcb7eb492
je 0x4025d2
jmp 0x401e5b
mov eax, dword [esi + 4]
sub eax, 0xd2631169
je 0x40265f
jmp 0x401e6e
mov eax, dword [esi + 4]
sub eax, 0xd280f5fc
je 0x403379
jmp 0x401e81
mov eax, dword [esi + 4]
sub eax, 0xd2a8cd71
je 0x40253f
jmp 0x401e94
mov eax, dword [esi + 4]
sub eax, 0xd7fed6b8
je 0x403564
jmp 0x401ea7
mov eax, dword [esi + 4]
sub eax, 0xd859719a
je 0x403137
jmp 0x401eba
mov eax, dword [esi + 4]
sub eax, 0xd91a3e19
je 0x4035d0
jmp 0x401ecd
mov eax, dword [esi + 4]
sub eax, 0xd9dc95ea
je 0x402a60
jmp 0x401ee0
mov eax, dword [esi + 4]
sub eax, 0xdc25c7f4
je 0x403221
jmp 0x401ef3
mov eax, dword [esi + 4]
sub eax, 0xdd620e34
je 0x4031aa
jmp 0x401f06
mov eax, dword [esi + 4]
sub eax, 0xe17195dc
je 0x402deb
jmp 0x401f19
mov eax, dword [esi + 4]
sub eax, 0xe372f1c6
je 0x403541
jmp 0x401f2c
mov eax, dword [esi + 4]
sub eax, 0xe5ebfd2a
je 0x402b36
jmp 0x401f3f
mov eax, dword [esi + 4]
sub eax, 0xeb50a23f
je 0x40254b
jmp 0x401f52
mov eax, dword [esi + 4]
sub eax, 0xeb7de81a
je 0x4032c3
jmp 0x401f65
mov eax, dword [esi + 4]
sub eax, 0xec5aae91
je 0x402fc1
jmp 0x401f78
mov eax, dword [esi + 4]
sub eax, 0xec5f5576
je 0x4032cf
jmp 0x401f8b
mov eax, dword [esi + 4]
sub eax, 0xec717343
je 0x4028c5
jmp 0x401f9e
mov eax, dword [esi + 4]
sub eax, 0xf49d5f3f
je 0x402ee6
jmp 0x401fb1
mov eax, dword [esi + 4]
sub eax, 0xf922697f
je 0x402d1a
jmp 0x401fc4
mov eax, dword [esi + 4]
sub eax, 0xfaecc9c2
je 0x403306
jmp 0x401fd7
mov eax, dword [esi + 4]
sub eax, 0xfbce76c8
je 0x4035ac
jmp 0x401fea
mov eax, dword [esi + 4]
sub eax, 0xfcc9e845
je 0x402d74
jmp 0x401ffd
mov eax, dword [esi + 4]
sub eax, 0xfeeb5711
je 0x40345e
jmp 0x402010
mov eax, dword [esi + 4]
sub eax, 0xff093293
je 0x402754
jmp 0x402023
mov eax, dword [esi + 4]
sub eax, 0x2385c4
je 0x402a29
jmp 0x402036
mov eax, dword [esi + 4]
sub eax, 0x7b32c3
je 0x403600
jmp 0x402049
mov eax, dword [esi + 4]
sub eax, 0x1b83701
je 0x40340c
jmp 0x40205c
mov eax, dword [esi + 4]
sub eax, 0x493468a
je 0x402ff4
jmp 0x40206f
mov eax, dword [esi + 4]
sub eax, 0xb01d24f
je 0x403594
jmp 0x402082
mov eax, dword [esi + 4]
sub eax, 0xbcca11a
je 0x4030c4
jmp 0x402095
mov eax, dword [esi + 4]
sub eax, 0xbfa95b0
je 0x402760
jmp 0x4020a8
mov eax, dword [esi + 4]
sub eax, 0xe038b7d
je 0x403570
jmp 0x4020bb
mov eax, dword [esi + 4]
sub eax, 0x126ae2e8
je 0x403023
jmp 0x4020ce
mov eax, dword [esi + 4]
sub eax, 0x18c88c72
je 0x4027cb
jmp 0x4020e1
mov eax, dword [esi + 4]
sub eax, 0x19525b1f
je 0x4035c4
mov eax, dword [0x4405f4]
mov ecx, dword [0x4405f0]
mov edx, eax
sub edx, 0x97698170
sub edx, 1
add edx, 0x97698170
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, 0x813a0c8b
mov ecx, 0x4086c856
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x403642
mov ecx, dword [0x4405f4]
mov eax, dword [0x4405f0]
mov edx, ecx
add edx, 0xa8886cec
sub edx, 1
sub edx, 0xa8886cec
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, 0x7d00151b
mov ecx, 0x9cccc3ac
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x403642
mov eax, dword [esi + 8]
mov ecx, dword [esi + 0xc]
push eax
sub esp, 0x14
mov edx, esp
mov dword [esi + 0x40], edx
push eax
mov edx, esp
mov dword [esi + 0x44], edx
push eax
mov edx, esp
mov dword [esi + 0x48], edx
push eax
mov edx, esp
mov dword [esi + 0x4c], edx
mov edx, ecx
add edx, 4
mov dword [esi + 0x50], edx
mov edx, ecx
add edx, 0x1c
mov dword [esi + 0x54], edx
add ecx, 0x38
mov dword [esi + 0x58], ecx
mov dword [esi + 0x28], eax
mov dword [esi + 0x24], 0x1e3
vmovsd xmm0, qword [0x4371b8]
vmovsd qword [esi + 0x18], xmm0
lea ecx, [esi + 0x78]
lea eax, [0x4372f0]
sub esp, 4
mov dword [esp], eax
call fcn.0041e070
mov byte [esi + 0x17], 1
mov eax, dword [esi + 0x2c]
mov byte [eax], 1
mov eax, dword [esi + 0x30]
vmovsd xmm0, qword [0x4371b0]
vmovsd qword [eax], xmm0
mov eax, dword [esi + 0x34]
vmovsd xmm0, qword [0x4371a8]
vmovsd qword [eax], xmm0
mov eax, dword [esi + 0x38]
mov dword [eax], 0xb
mov ecx, dword [0x4405f4]
mov eax, dword [0x4405f0]
mov edx, ecx
add edx, 0xf67c81cf
sub edx, 1
sub edx, 0xf67c81cf
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, 0x7d00151b
mov ecx, 0xd2a8cd71
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x403642
mov dword [esi + 0x10], 0xeb50a23f
jmp 0x403642
mov eax, dword [esi + 0x38]
mov eax, dword [eax]
mov dword [esi + 0x5c], eax
mov dword [esi + 0x10], 0x8741e939
jmp 0x403642
mov ecx, dword [0x4405f4]
mov eax, dword [0x4405f0]
mov edx, ecx
sub edx, 0x9b77f54a
sub edx, 1
add edx, 0x9b77f54a
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, 0x82b17590
mov ecx, 0xcb7eb492
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x403642
mov eax, dword [esi + 0x5c]
cmp eax, 0
setg al
and al, 1
mov byte [esi + 0x63], al
mov ecx, dword [0x4405f4]
mov eax, dword [0x4405f0]
mov edx, ecx
sub edx, 0x8900670c
sub edx, 1
add edx, 0x8900670c
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, 0x82b17590
mov ecx, 0xb6c57c0f
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x403642
mov dword [esi + 0x10], 0xd2631169
jmp 0x403642
mov dl, byte [esi + 0x63]
mov eax, 0x9613efa0
mov ecx, 0x42c0fe18
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x403642
mov ecx, dword [0x4405f4]
mov eax, dword [0x4405f0]
mov edx, ecx
sub edx, 0xd2ed48d4
sub edx, 1
add edx, 0xd2ed48d4
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, 0xe372f1c6
mov ecx, 0xba20c7bc
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x403642
mov eax, dword [esi + 0x38]
mov eax, dword [eax]
add eax, 0xeabbc66f
add eax, 0xffffffff
sub eax, 0xeabbc66f
mov dword [esi + 0x64], eax
mov eax, dword [0x4405f4]
mov ecx, dword [0x4405f0]
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, 0xe372f1c6
mov ecx, 0xff093293
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x403642
mov dword [esi + 0x10], 0xbfa95b0
jmp 0x403642
mov ecx, dword [0x4405f4]
mov eax, dword [0x4405f0]
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, 0x9d2610ed
mov ecx, 0x18c88c72
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x403642
mov eax, dword [esi + 0x38]
mov ecx, dword [esi + 0x64]
mov dword [eax], ecx
mov ecx, dword [0x4405f4]
mov eax, dword [0x4405f0]
mov edx, ecx
sub edx, 0x7d41767f
sub edx, 1
add edx, 0x7d41767f
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, 0x9d2610ed
mov ecx, 0x8d8879d2
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x403642
mov dword [esi + 0x10], 0x41f1675a
jmp 0x403642
mov ecx, dword [0x4405f4]
mov eax, dword [0x4405f0]
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, 0xd7fed6b8
mov ecx, 0x7e549399
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x403642
mov ecx, dword [esi + 0x3c]
lea eax, [0x4372f0]
sub esp, 4
mov dword [esp], eax
call fcn.0041e070
mov ecx, dword [esi + 0x40]
lea eax, [0x4372f0]
sub esp, 4
mov dword [esp], eax
call fcn.0041e070
mov dword [esi + 0x10], 0xaf1dc4c8
jmp 0x403642
mov eax, dword [0x4405f4]
mov ecx, dword [0x4405f0]
mov edx, eax
sub edx, 0x1bba2447
sub edx, 1
add edx, 0x1bba2447
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, 0xe038b7d
mov ecx, 0x6d9b451b
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x403642
mov dword [esi + 0x10], 0x28a5ef49
jmp 0x403642
mov eax, dword [esi + 0x44]
mov dword [eax], 0xa
mov dword [esi + 0x10], 0xab835194
jmp 0x403642
mov ecx, dword [0x4405f4]
mov eax, dword [0x4405f0]
mov edx, ecx
sub edx, 0x7c7956d8
sub edx, 1
add edx, 0x7c7956d8
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, 0xb01d24f
mov ecx, 0x963c97d1
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x403642
mov eax, dword [0x4405f4]
mov ecx, dword [0x4405f0]
mov edx, eax
sub edx, 0xc65cf7db
sub edx, 1
add edx, 0xc65cf7db
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, 0xb01d24f
mov ecx, 0xe5ebfd2a
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x403642
mov dword [esi + 0x10], 0x6c965167
jmp 0x403642
mov eax, dword [0x4405f4]
mov ecx, dword [0x4405f0]
mov edx, eax
sub edx, 0xda5b7d3
sub edx, 1
add edx, 0xda5b7d3
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, 0x830d0b24
mov ecx, 0x6efcabe5
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x403642
mov ecx, dword [0x4405f4]
mov eax, dword [0x4405f0]
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, 0xfbce76c8
mov ecx, 0xb95999af
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x403642
mov dword [esi + 0x10], 0x2f13085c
jmp 0x403642
mov dword [esi + 0x10], 0x6c965167
jmp 0x403642
mov eax, dword [0x4405f4]
mov ecx, dword [0x4405f0]
mov edx, eax
add edx, 0xc2e4586e
sub edx, 1
sub edx, 0xc2e4586e
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, 0x5cf73a88
mov ecx, 0xfcc9e845
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x403642
mov ecx, dword [0x4405f4]
mov eax, dword [0x4405f0]
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, 0x5cf73a88
mov ecx, 0x5d86230e
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x403642
mov eax, dword [esi + 0x48]
mov dword [eax], 0x47
mov dword [esi + 0x10], 0x75ffd8aa
jmp 0x403642
mov dword [esi + 0x10], 0x8d03a79f
jmp 0x403642
mov ecx, dword [0x4405f4]
mov eax, dword [0x4405f0]
mov edx, ecx
add edx, 0xc47ee52d
sub edx, 1
sub edx, 0xc47ee52d
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, 0xd91a3e19
mov ecx, 0x610d7f04
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x403642
mov dword [esi + 0x10], 0x500656c6
jmp 0x403642
mov dword [esi + 0x10], 0x493468a
jmp 0x403642
mov eax, dword [esi + 0x48]
mov eax, dword [eax]
xor ecx, ecx
sub ecx, 0xffffffff
sub eax, ecx
mov dword [esi + 0x6c], eax
mov dword [esi + 0x10], 0x2861bfa0
jmp 0x403642
mov eax, dword [0x4405f4]
mov ecx, dword [0x4405f0]
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, 0xbad1ad32
mov ecx, 0x42e90e6e
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x403642
mov ecx, dword [0x4405f4]
mov eax, dword [0x4405f0]
mov edx, ecx
add edx, 0xa3b95930
sub edx, 1
sub edx, 0xa3b95930
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, 0x7a4f6a4a
mov ecx, 0xd859719a
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x403642
mov ecx, dword [0x4405f4]
mov eax, dword [0x4405f0]
mov edx, ecx
add edx, 0x6e20fbf9
sub edx, 1
sub edx, 0x6e20fbf9
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, 0x7a4f6a4a
mov ecx, 0xdd620e34
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x403642
mov dword [esi + 0x10], 0xc7fb6daa
jmp 0x403642
mov ecx, dword [0x4405f4]
mov eax, dword [0x4405f0]
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, 0x7b32c3
mov ecx, 0xdc25c7f4
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x403642
mov eax, dword [esi + 0x4c]
mov eax, dword [eax]
mov dword [esi + 0x70], eax
mov ecx, dword [0x4405f4]
mov eax, dword [0x4405f0]
mov edx, ecx
sub edx, 0x104f00ee
sub edx, 1
add edx, 0x104f00ee
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, 0x7b32c3
mov ecx, 0x73d25c20
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x403642
mov edx, dword [esi + 0x70]
mov eax, 0xfaecc9c2
mov ecx, 0xeb7de81a
cmp edx, 0
cmovg eax, ecx
mov dword [esi + 0x10], eax
jmp 0x403642
mov dword [esi + 0x10], 0xec5f5576
jmp 0x403642
mov eax, dword [esi + 0x4c]
mov eax, dword [eax]
mov dword [esi + 0x74], eax
mov dword [esi + 0x10], 0xb171e6f2
jmp 0x403642
mov ecx, dword [esi + 0x74]
add ecx, 0x9c2c11a7
add ecx, 0xffffffff
sub ecx, 0x9c2c11a7
mov eax, dword [esi + 0x4c]
mov dword [eax], ecx
mov dword [esi + 0x10], 0xc7fb6daa
jmp 0x403642
mov ecx, dword [0x4405f4]
mov eax, dword [0x4405f0]
mov edx, ecx
sub edx, 0xb42530c5
sub edx, 1
add edx, 0xb42530c5
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, 0x5f526b25
mov ecx, 0xd280f5fc
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x403642
lea ecx, [esi + 0x78]
call fcn.0041e000
mov ecx, dword [esi + 0x50]
call fcn.0041e000
mov ecx, dword [esi + 0x54]
call fcn.0041e000
mov ecx, dword [esi + 0x58]
call fcn.0041e000
mov ecx, dword [0x4405f4]
mov eax, dword [0x4405f0]
mov edx, ecx
add edx, 0x1c5e8d9
sub edx, 1
sub edx, 0x1c5e8d9
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, 0x5f526b25
mov ecx, 0x1b83701
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x403642
mov dword [esi + 0x10], 0xa6891b48
jmp 0x403642
mov eax, dword [0x4405f4]
mov ecx, dword [0x4405f0]
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, 0x826e5d35
mov ecx, 0xfeeb5711
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x403642
mov eax, dword [0x4405f4]
mov ecx, dword [0x4405f0]
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, 0x826e5d35
mov ecx, 0x996a2459
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x403642
mov ecx, dword [esi + 0x90]
xor ecx, ebp
call fcn.004276e0
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0x58
mov dword [esi + 0x10], 0x4086c856
jmp 0x403642
mov eax, dword [esi + 0x5c]
mov dword [esi + 0x10], 0xcb7eb492
jmp 0x403642
mov eax, dword [esi + 0x38]
mov dword [esi + 0x10], 0xba20c7bc
jmp 0x403642
mov eax, dword [esi + 0x38]
mov ecx, dword [esi + 0x64]
mov dword [eax], ecx
mov dword [esi + 0x10], 0x18c88c72
jmp 0x403642
mov dword [esi + 0x10], 0xec717343
jmp 0x403642
mov eax, dword [esi + 0x3c]
mov ecx, dword [esi + 0x40]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0041e280
add esp, 8
mov dword [esi + 0x10], 0x6d9b451b
jmp 0x403642
mov dword [esi + 0x10], 0x963c97d1
jmp 0x403642
mov dword [esi + 0x10], 0x924ed271
jmp 0x403642
mov dword [esi + 0x10], 0xa9b93487
jmp 0x403642
mov eax, dword [esi + 0x48]
mov dword [esi + 0x10], 0x610d7f04
jmp 0x403642
mov eax, dword [esi + 0x4c]
mov dword [eax], 0x17
mov dword [esi + 0x10], 0x42e90e6e
jmp 0x403642
mov eax, dword [esi + 0x4c]
mov dword [esi + 0x10], 0xdc25c7f4
jmp 0x403642
mov dword [esi + 0x10], 0xfeeb5711
jmp 0x401c1e