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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x388
mov esi, esp
mov eax, dword [ebp + 8]
mov ecx, dword [ebp + 0xc]
mov edx, dword [ebp + 0x14]
mov edi, dword [ebp + 0x10]
mov ebx, dword [0x501494]
mov dword [esi + 0x324], eax
mov eax, dword [0x501490]
mov dword [esi + 0x320], eax
mov eax, ebx
sub eax, 0x55d8f1fd
sub eax, 1
add eax, 0x55d8f1fd
imul ebx, eax
and ebx, 1
cmp ebx, 0
sete al
and al, 1
mov byte [esi + 0x332], al
mov ebx, dword [esi + 0x320]
cmp ebx, 0xa
setl al
and al, 1
mov byte [esi + 0x333], al
mov dword [esi + 0x32c], 0xc5d9adce
mov dword [esi + 0x31c], edi
mov dword [esi + 0x318], ecx
mov dword [esi + 0x314], edx
mov eax, dword [esi + 0x32c]
mov ecx, eax
sub ecx, 0x8c925f21
mov dword [esi + 0x310], eax
mov dword [esi + 0x30c], ecx
jg 0x4d4826
jmp 0x4d480a
mov eax, dword [esi + 0x310]
sub eax, 0x889f7e10
mov dword [esi + 0x308], eax
je 0x4d6706
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0x7b54e630
mov dword [esi + 0x304], eax
jg 0x4d542e
jmp 0x4d4842
mov eax, dword [esi + 0x310]
sub eax, 0x8e92ef42
mov dword [esi + 0x300], eax
jg 0x4d487a
jmp 0x4d485e
mov eax, dword [esi + 0x310]
sub eax, 0x8c925f22
mov dword [esi + 0x2fc], eax
je 0x4d5a5f
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0x8fed4911
mov dword [esi + 0x2f8], eax
jg 0x4d48b2
jmp 0x4d4896
mov eax, dword [esi + 0x310]
sub eax, 0x8e92ef43
mov dword [esi + 0x2f4], eax
je 0x4d6a71
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0x91d664ab
mov dword [esi + 0x2f0], eax
jg 0x4d48ea
jmp 0x4d48ce
mov eax, dword [esi + 0x310]
sub eax, 0x8fed4912
mov dword [esi + 0x2ec], eax
je 0x4d64e1
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0x972a7594
mov dword [esi + 0x2e8], eax
jg 0x4d4922
jmp 0x4d4906
mov eax, dword [esi + 0x310]
sub eax, 0x91d664ac
mov dword [esi + 0x2e4], eax
je 0x4d6474
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0x9880c202
mov dword [esi + 0x2e0], eax
jg 0x4d495a
jmp 0x4d493e
mov eax, dword [esi + 0x310]
sub eax, 0x972a7595
mov dword [esi + 0x2dc], eax
je 0x4d5d85
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0xa02e750f
mov dword [esi + 0x2d8], eax
jg 0x4d4992
jmp 0x4d4976
mov eax, dword [esi + 0x310]
sub eax, 0x9880c203
mov dword [esi + 0x2d4], eax
je 0x4d5d61
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0xa2f1a582
mov dword [esi + 0x2d0], eax
jg 0x4d49ca
jmp 0x4d49ae
mov eax, dword [esi + 0x310]
sub eax, 0xa02e7510
mov dword [esi + 0x2cc], eax
je 0x4d5add
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0xa6750f7d
mov dword [esi + 0x2c8], eax
jg 0x4d4a02
jmp 0x4d49e6
mov eax, dword [esi + 0x310]
sub eax, 0xa2f1a583
mov dword [esi + 0x2c4], eax
je 0x4d6201
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0xa9cb21ca
mov dword [esi + 0x2c0], eax
jg 0x4d4a3a
jmp 0x4d4a1e
mov eax, dword [esi + 0x310]
sub eax, 0xa6750f7e
mov dword [esi + 0x2bc], eax
je 0x4d6378
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0xab7f20a9
mov dword [esi + 0x2b8], eax
jg 0x4d4a72
jmp 0x4d4a56
mov eax, dword [esi + 0x310]
sub eax, 0xa9cb21cb
mov dword [esi + 0x2b4], eax
je 0x4d5910
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0xadcb7e47
mov dword [esi + 0x2b0], eax
jg 0x4d4aaa
jmp 0x4d4a8e
mov eax, dword [esi + 0x310]
sub eax, 0xab7f20aa
mov dword [esi + 0x2ac], eax
je 0x4d672c
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0xb044f044
mov dword [esi + 0x2a8], eax
jg 0x4d4ae2
jmp 0x4d4ac6
mov eax, dword [esi + 0x310]
sub eax, 0xadcb7e48
mov dword [esi + 0x2a4], eax
je 0x4d5bd6
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0xbc9d6441
mov dword [esi + 0x2a0], eax
jg 0x4d4b1a
jmp 0x4d4afe
mov eax, dword [esi + 0x310]
sub eax, 0xb044f045
mov dword [esi + 0x29c], eax
je 0x4d61e2
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0x78f68f39
mov dword [esi + 0x298], eax
jg 0x4d5412
jmp 0x4d4b36
mov eax, dword [esi + 0x310]
sub eax, 0x787314c4
mov dword [esi + 0x294], eax
jg 0x4d53f6
jmp 0x4d4b52
mov eax, dword [esi + 0x310]
sub eax, 0x7779a02b
mov dword [esi + 0x290], eax
jg 0x4d53da
jmp 0x4d4b6e
mov eax, dword [esi + 0x310]
sub eax, 0x7626cd75
mov dword [esi + 0x28c], eax
jg 0x4d53be
jmp 0x4d4b8a
mov eax, dword [esi + 0x310]
sub eax, 0x758b0513
mov dword [esi + 0x288], eax
jg 0x4d53a2
jmp 0x4d4ba6
mov eax, dword [esi + 0x310]
sub eax, 0x72793329
mov dword [esi + 0x284], eax
jg 0x4d5386
jmp 0x4d4bc2
mov eax, dword [esi + 0x310]
sub eax, 0x6fbb5496
mov dword [esi + 0x280], eax
jg 0x4d536a
jmp 0x4d4bde
mov eax, dword [esi + 0x310]
sub eax, 0x6ca8bd11
mov dword [esi + 0x27c], eax
jg 0x4d534e
jmp 0x4d4bfa
mov eax, dword [esi + 0x310]
sub eax, 0x64f0f14e
mov dword [esi + 0x278], eax
jg 0x4d5332
jmp 0x4d4c16
mov eax, dword [esi + 0x310]
sub eax, 0x63f68a5a
mov dword [esi + 0x274], eax
jg 0x4d5316
jmp 0x4d4c32
mov eax, dword [esi + 0x310]
sub eax, 0x620fb6d2
mov dword [esi + 0x270], eax
jg 0x4d52fa
jmp 0x4d4c4e
mov eax, dword [esi + 0x310]
sub eax, 0x61205592
mov dword [esi + 0x26c], eax
jg 0x4d52de
jmp 0x4d4c6a
mov eax, dword [esi + 0x310]
sub eax, 0x5d3c31b9
mov dword [esi + 0x268], eax
jg 0x4d52c2
jmp 0x4d4c86
mov eax, dword [esi + 0x310]
sub eax, 0x5b2a940c
mov dword [esi + 0x264], eax
jg 0x4d52a6
jmp 0x4d4ca2
mov eax, dword [esi + 0x310]
sub eax, 0x58e67688
mov dword [esi + 0x260], eax
jg 0x4d528a
jmp 0x4d4cbe
mov eax, dword [esi + 0x310]
sub eax, 0x533485b6
mov dword [esi + 0x25c], eax
jg 0x4d526e
jmp 0x4d4cda
mov eax, dword [esi + 0x310]
sub eax, 0x52dd3a58
mov dword [esi + 0x258], eax
jg 0x4d5252
jmp 0x4d4cf6
mov eax, dword [esi + 0x310]
sub eax, 0x495d61f2
mov dword [esi + 0x254], eax
jg 0x4d5236
jmp 0x4d4d12
mov eax, dword [esi + 0x310]
sub eax, 0x41ae63b2
mov dword [esi + 0x250], eax
jg 0x4d521a
jmp 0x4d4d2e
mov eax, dword [esi + 0x310]
sub eax, 0x3a5adfda
mov dword [esi + 0x24c], eax
jg 0x4d51fe
jmp 0x4d4d4a
mov eax, dword [esi + 0x310]
sub eax, 0x3975c09b
mov dword [esi + 0x248], eax
jg 0x4d51e2
jmp 0x4d4d66
mov eax, dword [esi + 0x310]
sub eax, 0x2a58c947
mov dword [esi + 0x244], eax
jg 0x4d51c6
jmp 0x4d4d82
mov eax, dword [esi + 0x310]
sub eax, 0x26607ed0
mov dword [esi + 0x240], eax
jg 0x4d51aa
jmp 0x4d4d9e
mov eax, dword [esi + 0x310]
sub eax, 0x111c3989
mov dword [esi + 0x23c], eax
jg 0x4d518e
jmp 0x4d4dba
mov eax, dword [esi + 0x310]
sub eax, 0xf92329c
mov dword [esi + 0x238], eax
jg 0x4d5172
jmp 0x4d4dd6
mov eax, dword [esi + 0x310]
sub eax, 0xe35466d
mov dword [esi + 0x234], eax
jg 0x4d5156
jmp 0x4d4df2
mov eax, dword [esi + 0x310]
sub eax, 0xe24e864
mov dword [esi + 0x230], eax
jg 0x4d513a
jmp 0x4d4e0e
mov eax, dword [esi + 0x310]
sub eax, 0xc5c917b
mov dword [esi + 0x22c], eax
jg 0x4d511e
jmp 0x4d4e2a
mov eax, dword [esi + 0x310]
sub eax, 0x674f0e0
mov dword [esi + 0x228], eax
jg 0x4d5102
jmp 0x4d4e46
mov eax, dword [esi + 0x310]
sub eax, 0xf9f234cb
mov dword [esi + 0x224], eax
jg 0x4d50e6
jmp 0x4d4e62
mov eax, dword [esi + 0x310]
sub eax, 0xf6979d19
mov dword [esi + 0x220], eax
jg 0x4d50ca
jmp 0x4d4e7e
mov eax, dword [esi + 0x310]
sub eax, 0xf4c12103
mov dword [esi + 0x21c], eax
jg 0x4d50ae
jmp 0x4d4e9a
mov eax, dword [esi + 0x310]
sub eax, 0xea92d3c4
mov dword [esi + 0x218], eax
jg 0x4d5092
jmp 0x4d4eb6
mov eax, dword [esi + 0x310]
sub eax, 0xe93f3797
mov dword [esi + 0x214], eax
jg 0x4d5076
jmp 0x4d4ed2
mov eax, dword [esi + 0x310]
sub eax, 0xe8a7ed6b
mov dword [esi + 0x210], eax
jg 0x4d505a
jmp 0x4d4eee
mov eax, dword [esi + 0x310]
sub eax, 0xe75f9579
mov dword [esi + 0x20c], eax
jg 0x4d503e
jmp 0x4d4f0a
mov eax, dword [esi + 0x310]
sub eax, 0xd73c7b4b
mov dword [esi + 0x208], eax
jg 0x4d5022
jmp 0x4d4f26
mov eax, dword [esi + 0x310]
sub eax, 0xd39a5ba6
mov dword [esi + 0x204], eax
jg 0x4d5006
jmp 0x4d4f42
mov eax, dword [esi + 0x310]
sub eax, 0xca43ff28
mov dword [esi + 0x200], eax
jg 0x4d4fea
jmp 0x4d4f5e
mov eax, dword [esi + 0x310]
sub eax, 0xc5d9adcd
mov dword [esi + 0x1fc], eax
jg 0x4d4fce
jmp 0x4d4f7a
mov eax, dword [esi + 0x310]
sub eax, 0xbc9d6442
mov dword [esi + 0x1f8], eax
je 0x4d59b2
jmp 0x4d4f96
mov eax, dword [esi + 0x310]
sub eax, 0xbca244b3
mov dword [esi + 0x1f4], eax
je 0x4d659e
jmp 0x4d4fb2
mov eax, dword [esi + 0x310]
sub eax, 0xc1b2aa1c
mov dword [esi + 0x1f0], eax
je 0x4d62b4
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0xc5d9adce
mov dword [esi + 0x1ec], eax
je 0x4d544f
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0xca43ff29
mov dword [esi + 0x1e8], eax
je 0x4d5c7b
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0xd39a5ba7
mov dword [esi + 0x1e4], eax
je 0x4d5dea
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0xd73c7b4c
mov dword [esi + 0x1e0], eax
je 0x4d6687
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0xe75f957a
mov dword [esi + 0x1dc], eax
je 0x4d5eef
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0xe8a7ed6c
mov dword [esi + 0x1d8], eax
je 0x4d591f
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0xe93f3798
mov dword [esi + 0x1d4], eax
je 0x4d66bb
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0xea92d3c5
mov dword [esi + 0x1d0], eax
je 0x4d54b9
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0xf4c12104
mov dword [esi + 0x1cc], eax
je 0x4d673c
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0xf6979d1a
mov dword [esi + 0x1c8], eax
je 0x4d6441
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0xf9f234cc
mov dword [esi + 0x1c4], eax
je 0x4d582c
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0x674f0e1
mov dword [esi + 0x1c0], eax
je 0x4d5d40
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0xc5c917c
mov dword [esi + 0x1bc], eax
je 0x4d5b46
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0xe24e865
mov dword [esi + 0x1b8], eax
je 0x4d6a44
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0xe35466e
mov dword [esi + 0x1b4], eax
je 0x4d5b55
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0xf92329d
mov dword [esi + 0x1b0], eax
je 0x4d6a2c
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0x111c398a
mov dword [esi + 0x1ac], eax
je 0x4d5fb3
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0x26607ed1
mov dword [esi + 0x1a8], eax
je 0x4d6432
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0x2a58c948
mov dword [esi + 0x1a4], eax
je 0x4d65bf
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0x3975c09c
mov dword [esi + 0x1a0], eax
je 0x4d5afe
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0x3a5adfdb
mov dword [esi + 0x19c], eax
je 0x4d584d
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0x41ae63b3
mov dword [esi + 0x198], eax
je 0x4d5b64
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0x495d61f3
mov dword [esi + 0x194], eax
je 0x4d6696
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0x52dd3a59
mov dword [esi + 0x190], eax
je 0x4d5e70
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0x533485b7
mov dword [esi + 0x18c], eax
je 0x4d61ae
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0x58e67689
mov dword [esi + 0x188], eax
je 0x4d5e91
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0x5b2a940d
mov dword [esi + 0x184], eax
je 0x4d6ac4
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0x5d3c31ba
mov dword [esi + 0x180], eax
je 0x4d6aad
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0x61205593
mov dword [esi + 0x17c], eax
je 0x4d58b2
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0x620fb6d3
mov dword [esi + 0x178], eax
je 0x4d6a05
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0x63f68a5b
mov dword [esi + 0x174], eax
je 0x4d5fa4
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0x64f0f14f
mov dword [esi + 0x170], eax
je 0x4d62d3
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0x6ca8bd12
mov dword [esi + 0x16c], eax
je 0x4d6465
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0x6fbb5497
mov dword [esi + 0x168], eax
je 0x4d6a90
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0x7279332a
mov dword [esi + 0x164], eax
je 0x4d6483
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0x758b0514
mov dword [esi + 0x160], eax
je 0x4d59a3
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0x7626cd76
mov dword [esi + 0x15c], eax
je 0x4d6066
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0x7779a02c
mov dword [esi + 0x158], eax
je 0x4d661d
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0x787314c5
mov dword [esi + 0x154], eax
je 0x4d6a14
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0x78f68f3a
mov dword [esi + 0x150], eax
je 0x4d5b80
jmp 0x4d544a
mov eax, dword [esi + 0x310]
sub eax, 0x7b54e631
mov dword [esi + 0x14c], eax
je 0x4d66e1
jmp 0x4d544a
jmp 0x4d6ada
mov eax, 0xf4c12104
mov ecx, 0xea92d3c5
mov dl, 1
mov dh, byte [esi + 0x332]
mov bl, byte [esi + 0x333]
mov bh, dh
xor bh, 1
mov dword [esi + 0x148], eax
mov al, bl
xor al, 1
xor dl, 0
mov ah, bh
and ah, 0
and dh, dl
mov byte [esi + 0x147], al
and al, 0
and bl, dl
or ah, dh
or al, bl
xor ah, al
mov al, byte [esi + 0x147]
or bh, al
xor bh, 1
or dl, 0
and bh, dl
or ah, bh
test ah, 1
mov edi, dword [esi + 0x148]
cmovne edi, ecx
mov dword [esi + 0x32c], edi
jmp 0x4d6ada
mov eax, 5
mov ecx, 0
mov edx, 0x8c
mov edi, 4
mov dword [esi + 0x140], eax
mov eax, edi
mov dword [esi + 0x13c], edi
mov dword [esi + 0x138], ecx
mov dword [esi + 0x134], edx
call fcn.004ddc10
mov eax, esp
mov dword [esi + 0x334], eax
mov eax, dword [esi + 0x13c]
call fcn.004ddc10
mov eax, esp
mov dword [esi + 0x338], eax
mov eax, dword [esi + 0x13c]
call fcn.004ddc10
mov eax, esp
mov dword [esi + 0x33c], eax
mov eax, dword [esi + 0x13c]
call fcn.004ddc10
mov eax, esp
mov dword [esi + 0x340], eax
mov eax, dword [esi + 0x13c]
call fcn.004ddc10
mov eax, esp
mov dword [esi + 0x344], eax
mov eax, dword [esi + 0x13c]
call fcn.004ddc10
mov eax, esp
mov dword [esi + 0x348], eax
mov eax, 0x8c
call fcn.004ddc10
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov dword [esi + 0x34c], eax
mov eax, dword [esi + 0x13c]
call fcn.004ddc10
mov eax, esp
mov dword [esi + 0x350], eax
mov eax, dword [esi + 0x13c]
call fcn.004ddc10
mov eax, esp
mov dword [esi + 0x354], eax
mov eax, dword [esi + 0x13c]
call fcn.004ddc10
mov eax, esp
mov dword [esi + 0x358], eax
mov eax, dword [esi + 0x13c]
call fcn.004ddc10
mov eax, esp
mov dword [esi + 0x35c], eax
mov eax, dword [esi + 0x13c]
call fcn.004ddc10
mov eax, esp
mov dword [esi + 0x360], eax
mov eax, dword [esi + 0x13c]
call fcn.004ddc10
mov eax, esp
mov dword [esi + 0x364], eax
mov eax, dword [esi + 0x13c]
call fcn.004ddc10
mov eax, esp
mov dword [esi + 0x368], eax
mov eax, dword [esi + 0x13c]
call fcn.004ddc10
mov eax, esp
mov dword [esi + 0x36c], eax
mov eax, dword [esi + 0x13c]
call fcn.004ddc10
mov eax, esp
mov dword [esi + 0x370], eax
mov eax, 0x400
mov dword [esi + 0x130], eax
call fcn.004ddc10
mov eax, esp
mov dword [esi + 0x374], eax
mov eax, dword [esi + 0x130]
call fcn.004ddc10
mov eax, esp
mov ecx, 8
mov dword [esi + 0x378], eax
mov eax, ecx
call fcn.004ddc10
mov eax, esp
mov ecx, dword [esi + 0x334]
mov edx, dword [esi + 0x314]
mov dword [ecx], edx
mov ecx, dword [esi + 0x338]
mov edi, dword [esi + 0x31c]
mov dword [ecx], edi
mov ecx, dword [esi + 0x33c]
mov ebx, dword [esi + 0x318]
mov dword [ecx], ebx
mov ecx, dword [esi + 0x340]
mov edx, dword [esi + 0x324]
mov dword [ecx], edx
mov ecx, dword [esi + 0x344]
mov dword [ecx], 0
mov ecx, dword [esi + 0x348]
mov dword [ecx], 0
mov ecx, dword [esi + 0x34c]
sub esp, 0xc
mov dword [esp], ecx
mov dword [esp + 4], 0
mov dword [esp + 8], 0x8c
mov dword [esi + 0x12c], eax
call fcn.004de490
add esp, 0xc
mov eax, dword [esi + 0x350]
mov dword [eax], 0xd
mov eax, dword [esi + 0x354]
mov dword [eax], 0
mov eax, dword [esi + 0x35c]
mov dword [eax], 0
mov eax, dword [esi + 0x360]
mov dword [eax], 0x400
mov eax, dword [esi + 0x36c]
mov dword [eax], 0xffffffff
mov eax, dword [esi + 0x340]
mov eax, dword [eax]
mov ecx, dword [esi + 0x12c]
sub esp, 0xc
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 5
call fcn.0040c550
add esp, 0xc
mov ecx, 5
mov edx, dword [esi + 0x34c]
sub esp, 0xc
mov dword [esp], edx
mov edx, dword [esi + 0x12c]
mov dword [esp + 4], edx
mov dword [esp + 8], 5
mov dword [esi + 0x128], eax
mov dword [esi + 0x124], ecx
call fcn.004d6af0
add esp, 0xc
mov ecx, 0xf4c12104
mov edx, 0xf9f234cc
mov bl, 1
cmp eax, 0
setne bh
and bh, 1
mov byte [esi + 0x37f], bh
mov eax, dword [0x501494]
mov edi, dword [0x501490]
mov dword [esi + 0x120], eax
add eax, 0xe85941ab
sub eax, 1
sub eax, 0xe85941ab
mov dword [esi + 0x11c], eax
mov eax, dword [esi + 0x120]
mov dword [esi + 0x118], ecx
mov ecx, dword [esi + 0x11c]
imul eax, ecx
and eax, 1
cmp eax, 0
sete bh
cmp edi, 0xa
setl al
mov ah, bh
xor ah, 1
mov cl, al
xor cl, 1
xor bl, 1
mov ch, ah
and ch, 1
and bh, bl
mov byte [esi + 0x117], al
mov al, cl
and al, 1
mov byte [esi + 0x116], al
mov al, byte [esi + 0x117]
and al, bl
or ch, bh
mov bh, byte [esi + 0x116]
or bh, al
xor ch, bh
or ah, cl
xor ah, 1
or bl, 1
and ah, bl
or ch, ah
test ch, 1
mov edi, dword [esi + 0x118]
cmovne edi, edx
mov dword [esi + 0x32c], edi
jmp 0x4d6ada
mov eax, 0xe8a7ed6c
mov ecx, 0x3a5adfdb
mov dl, byte [esi + 0x37f]
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x32c], eax
jmp 0x4d6ada
mov eax, 0x620fb6d3
mov ecx, 0x61205593
mov edx, 0
mov edi, dword [0x501494]
mov ebx, dword [0x501490]
sub edx, 1
mov dword [esi + 0x110], eax
mov eax, edi
add eax, edx
imul edi, eax
and edi, 1
cmp edi, 0
sete al
cmp ebx, 0xa
setl ah
mov dl, al
and dl, ah
xor al, ah
or dl, al
test dl, 1
mov edi, dword [esi + 0x110]
cmovne edi, ecx
mov dword [esi + 0x32c], edi
jmp 0x4d6ada
mov eax, 0x620fb6d3
mov ecx, 0xa9cb21cb
mov edx, dword [0x501494]
mov edi, dword [0x501490]
mov ebx, edx
sub ebx, 0x29c9d4e4
sub ebx, 1
add ebx, 0x29c9d4e4
imul edx, ebx
and edx, 1
cmp edx, 0
sete dl
cmp edi, 0xa
setl dh
mov bl, dl
and bl, dh
xor dl, dh
or bl, dl
test bl, 1
cmovne eax, ecx
mov dword [esi + 0x32c], eax
jmp 0x4d6ada
mov dword [esi + 0x32c], 0x495d61f3
jmp 0x4d6ada
mov eax, 0x1037d806
mov ecx, 0x300
mov edx, dword [esi + 0x34c]
mov edx, dword [edx]
mov edi, dword [esi + 0x34c]
mov edi, dword [edi + 4]
add edx, 0xabfa404f
add edx, edi
sub edx, 0xabfa404f
mov dword [esi + 0x10c], ecx
mov ecx, edx
mov edx, dword [esi + 0x10c]
shl edx, cl
add eax, 0x736
add eax, edx
sub eax, 0x1037d806
shl eax, 1
sub esp, 4
mov dword [esp], eax
call fcn.004de543
add esp, 4
mov edx, 0x758b0514
mov edi, 0xbc9d6442
mov ebx, dword [esi + 0x34c]
mov dword [ebx + 0x10], eax
mov eax, dword [esi + 0x34c]
cmp dword [eax + 0x10], 0
cmovne edx, edi
mov dword [esi + 0x32c], edx
jmp 0x4d6ada
mov dword [esi + 0x32c], 0x495d61f3
jmp 0x4d6ada
mov eax, 0x787314c5
mov ecx, 0x8c925f22
mov dl, 1
mov edi, 0
mov ebx, dword [0x501494]
mov dword [esi + 0x108], eax
mov eax, dword [0x501490]
sub edi, 1
mov dword [esi + 0x104], eax
mov eax, ebx
add eax, edi
imul ebx, eax
and ebx, 1
cmp ebx, 0
sete dh
mov eax, dword [esi + 0x104]
cmp eax, 0xa
setl al
mov ah, dh
xor ah, 1
mov bl, al
xor bl, 1
xor dl, 0
mov bh, ah
and bh, 0
and dh, dl
mov byte [esi + 0x103], al
mov al, bl
and al, 0
mov byte [esi + 0x102], al
mov al, byte [esi + 0x103]
and al, dl
or bh, dh
mov dh, byte [esi + 0x102]
or dh, al
xor bh, dh
or ah, bl
xor ah, 1
or dl, 0
and ah, dl
or bh, ah
test bh, 1
mov edi, dword [esi + 0x108]
cmovne edi, ecx
mov dword [esi + 0x32c], edi
jmp 0x4d6ada
mov eax, 0x787314c5
mov ecx, 0xa02e7510
mov edx, 0
mov edi, dword [esi + 0x34c]
cmp dword [edi + 0xc], 0
setne bl
and bl, 1
mov byte [esi + 0x380], bl
mov edi, dword [0x501494]
mov ebx, dword [0x501490]
sub edx, 1
mov dword [esi + 0xfc], eax
mov eax, edi
add eax, edx
imul edi, eax
and edi, 1
cmp edi, 0
sete al
cmp ebx, 0xa
setl ah
mov dl, al
and dl, ah
xor al, ah
or dl, al
test dl, 1
mov edi, dword [esi + 0xfc]
cmovne edi, ecx
mov dword [esi + 0x32c], edi
jmp 0x4d6ada
mov eax, 0x41ae63b3
mov ecx, 0x3975c09c
mov dl, byte [esi + 0x380]
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x32c], eax
jmp 0x4d6ada
mov eax, dword [esi + 0x34c]
mov eax, dword [eax + 0xc]
shl eax, 0
sub esp, 4
mov dword [esp], eax
call fcn.004de543
add esp, 4
mov ecx, 0xc5c917c
mov edx, 0xe35466e
mov edi, dword [esi + 0x34c]
mov dword [edi + 0x14], eax
mov eax, dword [esi + 0x34c]
cmp dword [eax + 0x14], 0
cmovne ecx, edx
mov dword [esi + 0x32c], ecx
jmp 0x4d6ada
mov dword [esi + 0x32c], 0x495d61f3
jmp 0x4d6ada
mov dword [esi + 0x32c], 0x78f68f3a
jmp 0x4d6ada
mov eax, dword [esi + 0x34c]
mov dword [eax + 0x14], 0
mov dword [esi + 0x32c], 0x78f68f3a
jmp 0x4d6ada
mov eax, 0
mov ecx, dword [esi + 0x378]
mov edx, dword [esi + 0x348]
mov dword [edx], ecx
mov ecx, dword [esi + 0x33c]
mov ecx, dword [ecx]
sub eax, 0xd
add ecx, eax
mov eax, dword [esi + 0x33c]
mov dword [eax], ecx
mov eax, dword [esi + 0x34c]
mov dword [eax + 0x84], 0xfffffffe
mov eax, dword [esi + 0x34c]
mov dword [eax + 0x58], 0
mov dword [esi + 0x32c], 0xadcb7e48
jmp 0x4d6ada
mov eax, 0xf92329d
mov ecx, 0xca43ff29
mov dl, 1
mov edi, dword [0x501494]
mov ebx, dword [0x501490]
mov dword [esi + 0xf8], eax
mov eax, edi
add eax, 0x559db27d
sub eax, 1
sub eax, 0x559db27d
imul edi, eax
and edi, 1
cmp edi, 0
sete dh
cmp ebx, 0xa
setl al
mov ah, dh
xor ah, 1
mov bl, al
xor bl, 1
xor dl, 1
mov bh, ah
and bh, 1
and dh, dl
mov byte [esi + 0xf7], al
mov al, bl
and al, 1
mov byte [esi + 0xf6], al
mov al, byte [esi + 0xf7]
and al, dl
or bh, dh
mov dh, byte [esi + 0xf6]
or dh, al
xor bh, dh
or ah, bl
xor ah, 1
or dl, 1
and ah, dl
or bh, ah
test bh, 1
mov edi, dword [esi + 0xf8]
cmovne edi, ecx
mov dword [esi + 0x32c], edi
jmp 0x4d6ada
mov eax, 0xf92329d
mov ecx, 0x674f0e1
mov dl, 1
mov edi, 0
mov ebx, dword [esi + 0x35c]
cmp dword [ebx], 0
sete dh
and dh, 1
mov byte [esi + 0x381], dh
mov ebx, dword [0x501494]
mov dword [esi + 0xf0], eax
mov eax, dword [0x501490]
sub edi, 1
mov dword [esi + 0xec], eax
mov eax, ebx
add eax, edi
imul ebx, eax
and ebx, 1
cmp ebx, 0
sete dh
mov eax, dword [esi + 0xec]
cmp eax, 0xa
setl al
mov ah, dh
xor ah, 1
mov bl, al
xor bl, 1
xor dl, 1
mov bh, ah
and bh, 1
and dh, dl
mov byte [esi + 0xeb], al
mov al, bl
and al, 1
mov byte [esi + 0xea], al
mov al, byte [esi + 0xeb]
and al, dl
or bh, dh
mov dh, byte [esi + 0xea]
or dh, al
xor bh, dh
or ah, bl
xor ah, 1
or dl, 1
and ah, dl
or bh, ah
test bh, 1
mov edi, dword [esi + 0xf0]
cmovne edi, ecx
mov dword [esi + 0x32c], edi
jmp 0x4d6ada
mov eax, 0x7626cd76
mov ecx, 0x9880c203
mov dl, byte [esi + 0x381]
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x32c], eax
jmp 0x4d6ada
mov eax, 0x7626cd76
mov ecx, 0x972a7595
mov edx, dword [esi + 0x33c]
cmp dword [edx], 0
cmovne eax, ecx
mov dword [esi + 0x32c], eax
jmp 0x4d6ada
mov eax, 0xe24e865
mov ecx, 0xd39a5ba7
mov edx, 0
mov edi, dword [0x501494]
mov ebx, dword [0x501490]
sub edx, 1
mov dword [esi + 0xe4], eax
mov eax, edi
add eax, edx
imul edi, eax
and edi, 1
cmp edi, 0
sete al
cmp ebx, 0xa
setl ah
mov dl, al
and dl, ah
xor al, ah
or dl, al
test dl, 1
mov edi, dword [esi + 0xe4]
cmovne edi, ecx
mov dword [esi + 0x32c], edi
jmp 0x4d6ada
mov eax, 0xe24e865
mov ecx, 0x52dd3a59
mov edx, dword [esi + 0x358]
mov dword [edx], 0x400
mov edx, dword [esi + 0x358]
mov edx, dword [edx]
mov edi, dword [esi + 0x33c]
cmp edx, dword [edi]
seta bl
and bl, 1
mov byte [esi + 0x382], bl
mov edx, dword [0x501494]
mov edi, dword [0x501490]
mov ebx, edx
sub ebx, 0x745d57cf
sub ebx, 1
add ebx, 0x745d57cf
imul edx, ebx
and edx, 1
cmp edx, 0
sete dl
cmp edi, 0xa
setl dh
mov bl, dl
and bl, dh
xor dl, dh
or bl, dl
test bl, 1
cmovne eax, ecx
mov dword [esi + 0x32c], eax
jmp 0x4d6ada
mov eax, 0x111c398a
mov ecx, 0x58e67689
mov dl, byte [esi + 0x382]
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x32c], eax
jmp 0x4d6ada
mov eax, 0x8e92ef43
mov ecx, 0xe75f957a
mov edx, dword [0x501494]
mov edi, dword [0x501490]
mov ebx, edx
sub ebx, 0xc80e1562
sub ebx, 1
add ebx, 0xc80e1562
imul edx, ebx
and edx, 1
cmp edx, 0
sete dl
cmp edi, 0xa
setl dh
mov bl, dl
and bl, dh
xor dl, dh
or bl, dl
test bl, 1
cmovne eax, ecx
mov dword [esi + 0x32c], eax
jmp 0x4d6ada
mov eax, 0x8e92ef43
mov ecx, 0x63f68a5b
mov dl, 1
mov edi, dword [esi + 0x33c]
mov edi, dword [edi]
mov ebx, dword [esi + 0x358]
mov dword [ebx], edi
mov edi, dword [0x501494]
mov ebx, dword [0x501490]
mov dword [esi + 0xe0], eax
mov eax, edi
add eax, 0x4ee9bfe1
sub eax, 1
sub eax, 0x4ee9bfe1
imul edi, eax
and edi, 1
cmp edi, 0
sete dh
cmp ebx, 0xa
setl al
mov ah, dh
xor ah, 1
mov bl, al
xor bl, 1
xor dl, 0
mov bh, ah
and bh, 0
and dh, dl
mov byte [esi + 0xdf], al
mov al, bl
and al, 0
mov byte [esi + 0xde], al
mov al, byte [esi + 0xdf]
and al, dl
or bh, dh
mov dh, byte [esi + 0xde]
or dh, al
xor bh, dh
or ah, bl
xor ah, 1
or dl, 0
and ah, dl
or bh, ah
test bh, 1
mov edi, dword [esi + 0xe0]
cmovne edi, ecx
mov dword [esi + 0x32c], edi
jmp 0x4d6ada
mov dword [esi + 0x32c], 0x111c398a
jmp 0x4d6ada
mov eax, dword [esi + 0x358]
mov eax, dword [eax]
mov ecx, dword [esi + 0x340]
mov ecx, dword [ecx]
mov edx, dword [esi + 0x350]
add ecx, dword [edx]
mov edx, dword [esi + 0x374]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0040c550
add esp, 0xc
mov ecx, dword [esi + 0x358]
mov ecx, dword [ecx]
mov edx, dword [esi + 0x350]
mov edx, dword [edx]
sub edx, 0xf180aaa8
add edx, ecx
add edx, 0xf180aaa8
mov ecx, dword [esi + 0x350]
mov dword [ecx], edx
mov ecx, dword [esi + 0x358]
mov ecx, dword [ecx]
mov edx, dword [esi + 0x33c]
mov edx, dword [edx]
sub edx, 0x91755dfb
sub edx, ecx
add edx, 0x91755dfb
mov ecx, dword [esi + 0x33c]
mov dword [ecx], edx
mov ecx, dword [esi + 0x358]
mov ecx, dword [ecx]
mov edx, dword [esi + 0x35c]
mov dword [edx], ecx
mov ecx, dword [esi + 0x374]
mov edx, dword [esi + 0x344]
mov dword [edx], ecx
mov dword [esi + 0x32c], 0x7626cd76
mov dword [esi + 0xd8], eax
jmp 0x4d6ada
mov eax, dword [esi + 0x35c]
cmp dword [eax], 0
sete cl
and cl, 1
movzx eax, cl
mov edx, dword [esi + 0x360]
mov edx, dword [edx]
mov edi, dword [esi + 0x348]
mov edi, dword [edi]
mov ebx, dword [esi + 0x35c]
mov ebx, dword [ebx]
mov ecx, dword [esi + 0x344]
mov ecx, dword [ecx]
mov dword [esi + 0xd4], eax
mov eax, dword [esi + 0x34c]
mov dword [esi + 0xd0], eax
mov eax, dword [esi + 0x364]
mov dword [esi + 0xcc], eax
mov eax, dword [esi + 0x368]
sub esp, 0x20
mov dword [esi + 0xc8], eax
mov eax, dword [esi + 0xd0]
mov dword [esp], eax
mov dword [esp + 4], ecx
mov dword [esp + 8], ebx
mov eax, dword [esi + 0xcc]
mov dword [esp + 0xc], eax
mov dword [esp + 0x10], edi
mov dword [esp + 0x14], edx
mov eax, dword [esi + 0xc8]
mov dword [esp + 0x18], eax
mov eax, dword [esi + 0xd4]
mov dword [esp + 0x1c], eax
call fcn.004d7220
add esp, 0x20
mov ecx, 0xf6979d1a
mov edx, 0x533485b7
mov edi, 0
mov ebx, dword [esi + 0x370]
mov dword [ebx], eax
mov eax, dword [esi + 0x364]
mov eax, dword [eax]
mov ebx, dword [esi + 0x35c]
mov ebx, dword [ebx]
add ebx, 0xcfc96528
sub ebx, eax
sub ebx, 0xcfc96528
mov eax, dword [esi + 0x35c]
mov dword [eax], ebx
mov eax, dword [esi + 0x364]
mov eax, dword [eax]
mov ebx, dword [esi + 0x344]
mov ebx, dword [ebx]
add ebx, eax
mov eax, dword [esi + 0x344]
mov dword [eax], ebx
mov eax, dword [esi + 0x368]
mov eax, dword [eax]
mov ebx, dword [esi + 0x360]
mov ebx, dword [ebx]
sub edi, eax
add ebx, edi
mov eax, dword [esi + 0x360]
mov dword [eax], ebx
mov eax, dword [esi + 0x368]
mov eax, dword [eax]
mov edi, dword [esi + 0x348]
mov edi, dword [edi]
add edi, eax
mov eax, dword [esi + 0x348]
mov dword [eax], edi
mov eax, dword [esi + 0x360]
cmp dword [eax], 0
cmove ecx, edx
mov dword [esi + 0x32c], ecx
jmp 0x4d6ada
mov eax, 0xa2f1a583
mov ecx, 0xb044f045
mov edx, dword [esi + 0x358]
mov dword [edx], 0x400
mov edx, dword [esi + 0x358]
mov edx, dword [edx]
mov edi, dword [esi + 0x334]
cmp edx, dword [edi]
cmova eax, ecx
mov dword [esi + 0x32c], eax
jmp 0x4d6ada
mov eax, dword [esi + 0x334]
mov eax, dword [eax]
mov ecx, dword [esi + 0x358]
mov dword [ecx], eax
mov dword [esi + 0x32c], 0xa2f1a583
jmp 0x4d6ada
mov eax, dword [esi + 0x358]
mov eax, dword [eax]
mov ecx, dword [esi + 0x378]
mov edx, dword [esi + 0x338]
mov edx, dword [edx]
mov edi, dword [esi + 0x354]
add edx, dword [edi]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0040c550
add esp, 0xc
mov ecx, 0x64f0f14f
mov edx, 0xc1b2aa1c
mov edi, 0
mov ebx, dword [esi + 0x358]
mov ebx, dword [ebx]
mov dword [esi + 0xc4], eax
mov eax, dword [esi + 0x354]
mov eax, dword [eax]
add eax, 0x5e309c27
add eax, ebx
sub eax, 0x5e309c27
mov ebx, dword [esi + 0x354]
mov dword [ebx], eax
mov eax, dword [esi + 0x358]
mov eax, dword [eax]
mov ebx, dword [esi + 0x334]
mov ebx, dword [ebx]
sub edi, eax
add ebx, edi
mov eax, dword [esi + 0x334]
mov dword [eax], ebx
mov eax, dword [esi + 0x360]
mov dword [eax], 0x400
mov eax, dword [esi + 0x360]
mov eax, dword [eax]
mov edi, dword [esi + 0x334]
cmp eax, dword [edi]
cmova ecx, edx
mov dword [esi + 0x32c], ecx
jmp 0x4d6ada
mov eax, dword [esi + 0x334]
mov eax, dword [eax]
mov ecx, dword [esi + 0x360]
mov dword [ecx], eax
mov dword [esi + 0x32c], 0x64f0f14f
jmp 0x4d6ada
mov eax, 0x6fbb5497
mov ecx, 0xa6750f7e
mov dl, 1
mov edi, dword [0x501494]
mov ebx, dword [0x501490]
mov dword [esi + 0xc0], eax
mov eax, edi
sub eax, 0x65f205ad
sub eax, 1
add eax, 0x65f205ad
imul edi, eax
and edi, 1
cmp edi, 0
sete dh
cmp ebx, 0xa
setl al
mov ah, dh
xor ah, 1
mov bl, al
xor bl, 1
xor dl, 0
mov bh, ah
and bh, 0
and dh, dl
mov byte [esi + 0xbf], al
mov al, bl
and al, 0
mov byte [esi + 0xbe], al
mov al, byte [esi + 0xbf]
and al, dl
or bh, dh
mov dh, byte [esi + 0xbe]
or dh, al
xor bh, dh
or ah, bl
xor ah, 1
or dl, 0
and ah, dl
or bh, ah
test bh, 1
mov edi, dword [esi + 0xc0]
cmovne edi, ecx
mov dword [esi + 0x32c], edi
jmp 0x4d6ada
mov eax, 0x6fbb5497
mov ecx, 0x26607ed1
mov dl, 1
mov edi, 0
mov ebx, dword [esi + 0x378]
mov dword [esi + 0xb8], eax
mov eax, dword [esi + 0x348]
mov dword [eax], ebx
mov eax, dword [0x501494]
mov ebx, dword [0x501490]
sub edi, 1
mov dword [esi + 0xb4], eax
add eax, edi
mov edi, dword [esi + 0xb4]
imul edi, eax
and edi, 1
cmp edi, 0
sete dh
cmp ebx, 0xa
setl al
mov ah, dh
xor ah, 1
mov bl, al
xor bl, 1
xor dl, 0
mov bh, ah
and bh, 0
and dh, dl
mov byte [esi + 0xb3], al
mov al, bl
and al, 0
mov byte [esi + 0xb2], al
mov al, byte [esi + 0xb3]
and al, dl
or bh, dh
mov dh, byte [esi + 0xb2]
or dh, al
xor bh, dh
or ah, bl
xor ah, 1
or dl, 0
and ah, dl
or bh, ah
test bh, 1
mov edi, dword [esi + 0xb8]
cmovne edi, ecx
mov dword [esi + 0x32c], edi
jmp 0x4d6ada
mov dword [esi + 0x32c], 0xf6979d1a
jmp 0x4d6ada
mov eax, 0x91d664ac
mov ecx, 0x6ca8bd12
mov edx, dword [esi + 0x370]
cmp dword [edx], 0
cmovne eax, ecx
mov dword [esi + 0x32c], eax
jmp 0x4d6ada
mov dword [esi + 0x32c], 0x495d61f3
jmp 0x4d6ada
mov dword [esi + 0x32c], 0x7279332a
jmp 0x4d6ada
mov eax, 0x5d3c31ba
mov ecx, 0x8fed4912
mov edx, dword [0x501494]
mov edi, dword [0x501490]
mov ebx, edx
add ebx, 0xd9d6b12c
sub ebx, 1
sub ebx, 0xd9d6b12c
imul edx, ebx
and edx, 1
cmp edx, 0
sete dl
cmp edi, 0xa
setl dh
mov bl, dl
and bl, dh
xor dl, dh
or bl, dl
test bl, 1
cmovne eax, ecx
mov dword [esi + 0x32c], eax
jmp 0x4d6ada
mov eax, 0x5d3c31ba
mov ecx, 0xbca244b3
mov dl, 1
mov edi, dword [esi + 0x360]
cmp dword [edi], 0
setne dh
and dh, 1
mov byte [esi + 0x383], dh
mov edi, dword [0x501494]
mov ebx, dword [0x501490]
mov dword [esi + 0xac], eax
mov eax, edi
add eax, 0x28a6b7a6
sub eax, 1
sub eax, 0x28a6b7a6
imul edi, eax
and edi, 1
cmp edi, 0
sete dh
cmp ebx, 0xa
setl al
mov ah, dh
xor ah, 1
mov bl, al
xor bl, 1
xor dl, 0
mov bh, ah
and bh, 0
and dh, dl
mov byte [esi + 0xab], al
mov al, bl
and al, 0
mov byte [esi + 0xaa], al
mov al, byte [esi + 0xab]
and al, dl
or bh, dh
mov dh, byte [esi + 0xaa]
or dh, al
xor bh, dh
or ah, bl
xor ah, 1
or dl, 0
and ah, dl
or bh, ah
test bh, 1
mov edi, dword [esi + 0xac]
cmovne edi, ecx
mov dword [esi + 0x32c], edi
jmp 0x4d6ada
mov eax, 0x2a58c948
mov ecx, 0xadcb7e48
mov dl, byte [esi + 0x383]
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x32c], eax
jmp 0x4d6ada
mov eax, 0x5b2a940d
mov ecx, 0x7779a02c
mov edx, dword [0x501494]
mov edi, dword [0x501490]
mov ebx, edx
add ebx, 0x6db33f42
sub ebx, 1
sub ebx, 0x6db33f42
imul edx, ebx
and edx, 1
cmp edx, 0
sete dl
cmp edi, 0xa
setl dh
mov bl, dl
and bl, dh
xor dl, dh
or bl, dl
test bl, 1
cmovne eax, ecx
mov dword [esi + 0x32c], eax
jmp 0x4d6ada
mov eax, 0x5b2a940d
mov ecx, 0xd73c7b4c
mov edx, dword [esi + 0x36c]
mov dword [edx], 0
mov edx, dword [0x501494]
mov edi, dword [0x501490]
mov ebx, edx
add ebx, 0xabfcd73b
sub ebx, 1
sub ebx, 0xabfcd73b
imul edx, ebx
and edx, 1
cmp edx, 0
sete dl
cmp edi, 0xa
setl dh
mov bl, dl
and bl, dh
xor dl, dh
or bl, dl
test bl, 1
cmovne eax, ecx
mov dword [esi + 0x32c], eax
jmp 0x4d6ada
mov dword [esi + 0x32c], 0x495d61f3
jmp 0x4d6ada
mov eax, 0x7b54e631
mov ecx, 0xe93f3798
mov edx, dword [esi + 0x34c]
cmp dword [edx + 0x14], 0
cmovne eax, ecx
mov dword [esi + 0x32c], eax
jmp 0x4d6ada
mov eax, dword [esi + 0x34c]
mov eax, dword [eax + 0x14]
sub esp, 4
mov dword [esp], eax
call fcn.004ddc3b
add esp, 4
mov dword [esi + 0x32c], 0x7b54e631
jmp 0x4d6ada
mov eax, 0xab7f20aa
mov ecx, 0x889f7e10
mov edx, dword [esi + 0x34c]
cmp dword [edx + 0x10], 0
cmovne eax, ecx
mov dword [esi + 0x32c], eax
jmp 0x4d6ada
mov eax, dword [esi + 0x34c]
mov eax, dword [eax + 0x10]
sub esp, 4
mov dword [esp], eax
call fcn.004ddc3b
add esp, 4
mov dword [esi + 0x32c], 0xab7f20aa
jmp 0x4d6ada
mov eax, dword [esi + 0x36c]
mov eax, dword [eax]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, 5
mov ecx, 0
mov edx, 0x8c
mov edi, 4
mov dword [esi + 0xa4], eax
mov eax, edi
mov dword [esi + 0xa0], edi
mov dword [esi + 0x9c], ecx
mov dword [esi + 0x98], edx
call fcn.004ddc10
mov eax, esp
mov ecx, dword [esi + 0xa0]
mov dword [esi + 0x94], eax
mov eax, ecx
call fcn.004ddc10
mov eax, esp
mov ecx, dword [esi + 0xa0]
mov dword [esi + 0x90], eax
mov eax, ecx
call fcn.004ddc10
mov eax, esp
mov ecx, dword [esi + 0xa0]
mov dword [esi + 0x8c], eax
mov eax, ecx
call fcn.004ddc10
mov eax, esp
mov ecx, dword [esi + 0xa0]
mov dword [esi + 0x88], eax
mov eax, ecx
call fcn.004ddc10
mov eax, esp
mov ecx, dword [esi + 0xa0]
mov dword [esi + 0x84], eax
mov eax, ecx
call fcn.004ddc10
mov eax, esp
mov ecx, 0x8c
mov dword [esi + 0x80], eax
mov eax, ecx
call fcn.004ddc10
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov ecx, dword [esi + 0xa0]
mov dword [esi + 0x7c], eax
mov eax, ecx
call fcn.004ddc10
mov eax, esp
mov ecx, dword [esi + 0xa0]
mov dword [esi + 0x78], eax
mov eax, ecx
call fcn.004ddc10
mov eax, esp
mov ecx, dword [esi + 0x84]
mov edx, dword [esi + 0xa0]
mov dword [esi + 0x74], eax
mov eax, edx
mov dword [esi + 0x70], ecx
call fcn.004ddc10
mov eax, esp
mov ecx, dword [esi + 0xa0]
mov dword [esi + 0x6c], eax
mov eax, ecx
call fcn.004ddc10
mov eax, esp
mov ecx, dword [esi + 0xa0]
mov dword [esi + 0x68], eax
mov eax, ecx
call fcn.004ddc10
mov eax, esp
mov ecx, dword [esi + 0xa0]
mov dword [esi + 0x64], eax
mov eax, ecx
call fcn.004ddc10
mov eax, esp
mov ecx, dword [esi + 0x78]
mov edx, dword [esi + 0xa0]
mov dword [esi + 0x60], eax
mov eax, edx
mov dword [esi + 0x5c], ecx
call fcn.004ddc10
mov eax, esp
mov ecx, dword [esi + 0x88]
mov edx, dword [esi + 0xa0]
mov dword [esi + 0x58], eax
mov eax, edx
mov dword [esi + 0x54], ecx
call fcn.004ddc10
mov eax, dword [esi + 0x68]
mov ecx, esp
mov edx, dword [esi + 0xa0]
mov dword [esi + 0x50], eax
mov eax, edx
mov dword [esi + 0x4c], ecx
call fcn.004ddc10
mov eax, dword [esi + 0x64]
mov ecx, dword [esi + 0x80]
mov edx, esp
mov edi, 0x400
mov dword [esi + 0x48], eax
mov eax, edi
mov dword [esi + 0x44], edi
mov dword [esi + 0x40], ecx
mov dword [esi + 0x3c], edx
call fcn.004ddc10
mov eax, esp
mov ecx, dword [esi + 0x44]
mov dword [esi + 0x38], eax
mov eax, ecx
call fcn.004ddc10
mov eax, dword [esi + 0x94]
mov ecx, dword [esi + 0x74]
mov edx, 8
mov edi, esp
mov ebx, dword [esi + 0x90]
mov dword [esi + 0x34], eax
mov eax, edx
mov dword [esi + 0x30], edi
mov dword [esi + 0x2c], ecx
mov dword [esi + 0x28], ebx
call fcn.004ddc10
mov eax, esp
mov ecx, dword [esi + 0x8c]
mov edx, dword [esi + 0x4c]
mov edi, dword [esi + 0x34]
mov ebx, dword [esi + 0x314]
mov dword [edi], ebx
mov edi, dword [esi + 0x28]
mov ebx, dword [esi + 0x31c]
mov dword [edi], ebx
mov edi, dword [esi + 0x318]
mov dword [ecx], edi
mov ecx, dword [esi + 0x54]
mov edi, dword [esi + 0x324]
mov dword [ecx], edi
mov ecx, dword [esi + 0x70]
mov dword [ecx], 0
mov ecx, dword [esi + 0x40]
mov dword [ecx], 0
mov ecx, dword [esi + 0x7c]
sub esp, 0xc
mov dword [esp], ecx
mov dword [esp + 4], 0
mov dword [esp + 8], 0x8c
mov dword [esi + 0x24], eax
mov dword [esi + 0x20], edx
call fcn.004de490
add esp, 0xc
mov eax, dword [esi + 0x5c]
mov dword [eax], 0xd
mov ecx, dword [esi + 0x2c]
mov dword [ecx], 0
mov edx, dword [esi + 0x50]
mov dword [edx], 0
mov edi, dword [esi + 0x48]
mov dword [edi], 0x400
mov ebx, dword [esi + 0x20]
mov dword [ebx], 0xffffffff
mov eax, dword [esi + 0x54]
mov eax, dword [eax]
mov ecx, dword [esi + 0x24]
sub esp, 0xc
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 5
call fcn.0040c550
add esp, 0xc
mov ecx, 5
sub esp, 0xc
mov edx, dword [esi + 0x7c]
mov dword [esp], edx
mov edi, dword [esi + 0x24]
mov dword [esp + 4], edi
mov dword [esp + 8], 5
mov dword [esi + 0x1c], eax
mov dword [esi + 0x18], ecx
call fcn.004d6af0
add esp, 0xc
mov dword [esi + 0x32c], 0xea92d3c5
mov dword [esi + 0x14], eax
jmp 0x4d6ada
mov dword [esi + 0x32c], 0x61205593
jmp 0x4d6ada
mov eax, dword [esi + 0x34c]
mov dword [esi + 0x32c], 0x8c925f22
mov dword [esi + 0x10], eax
jmp 0x4d6ada
mov eax, dword [esi + 0x35c]
mov dword [esi + 0x32c], 0xca43ff29
mov dword [esi + 0xc], eax
jmp 0x4d6ada
mov eax, dword [esi + 0x358]
mov dword [eax], 0x400
mov eax, dword [esi + 0x358]
mov ecx, dword [esi + 0x33c]
mov dword [esi + 0x32c], 0xd39a5ba7
mov dword [esi + 8], eax
mov dword [esi + 4], ecx
jmp 0x4d6ada
mov eax, dword [esi + 0x33c]
mov eax, dword [eax]
mov ecx, dword [esi + 0x358]
mov dword [ecx], eax
mov dword [esi + 0x32c], 0xe75f957a
jmp 0x4d6ada
mov eax, dword [esi + 0x378]
mov ecx, dword [esi + 0x348]
mov dword [ecx], eax
mov dword [esi + 0x32c], 0xa6750f7e
jmp 0x4d6ada
mov eax, dword [esi + 0x360]
mov dword [esi + 0x32c], 0x8fed4912
mov dword [esi], eax
jmp 0x4d6ada
mov eax, dword [esi + 0x36c]
mov dword [eax], 0
mov dword [esi + 0x32c], 0x7779a02c
jmp 0x4d47e5