Function at 0x10059960
Capabilities:
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xa0
mov esi, esp
mov eax, dword [ebp + 0xc]
mov dword [esi + 0x90], eax
mov eax, dword [ebp + 8]
mov dword [esi + 0x94], eax
mov eax, dword [0x100c42d8]
xor eax, ebp
mov dword [esi + 0x98], eax
mov eax, dword [0x100c3c68]
add eax, dword [0x100c3c6c]
sub eax, 0xffeee45f
mov ecx, 0xf5574138
xor edx, edx
div ecx
and eax, 0x9eb94f33
xor eax, 0xbacf2490
add eax, 0x4741e067
xor eax, 0x38bb6cc9
and eax, 0xdbacf070
add eax, 0x5a11c1ec
or eax, 0x40202150
or eax, 0x32acc844
mov ecx, 0x123b3a90
xor edx, edx
div ecx
sub eax, 0xab4ab1a4
sub eax, 0xb33a2526
add eax, 0xc68297ba
mov ecx, 0x4eb73442
xor edx, edx
div ecx
imul eax, eax, 0xefbf4894
or eax, 0x579a1b00
sub eax, 0x48d6f0f8
xor eax, 0x82e847a6
or eax, 0x445033cc
sub eax, 0x3b6a28bd
mov ecx, 0x1c9540dd
xor edx, edx
div ecx
and eax, 0x1bc6b87e
and eax, 0xa507df18
mov ecx, 0xbb64f832
xor edx, edx
div ecx
imul eax, eax, 0x96b4ef3f
and eax, 0x31434fc0
and eax, 0x744e0b12
or eax, 0xf18b68c5
and eax, 0x685d413e
and eax, 0x6bf1a7a1
or eax, 0x219d175e
imul eax, eax, 0xdebd7375
imul eax, eax, 0x77cc239
mov ecx, 0xd5a37f49
xor edx, edx
div ecx
mov ecx, 0x860afc1f
xor edx, edx
div ecx
xor eax, 0x2b997bc2
and eax, 0xdf93cd8b
sub eax, 0x2169af23
mov ecx, 0xf87601b5
xor edx, edx
div ecx
sub eax, 0xf8b4bec0
or eax, 0x4a40b9a1
and eax, 0x3659d546
and eax, 0x3988334a
xor eax, 0x6be6f404
mov ecx, 0x566fa5d2
xor edx, edx
div ecx
mov ecx, 0xd404ab9e
xor edx, edx
div ecx
imul eax, eax, 0x29536516
or eax, 0x55d5d3a5
imul eax, eax, 0x81216219
mov ecx, 0xefdb7c67
xor edx, edx
div ecx
mov ecx, 0xc2d66cdd
xor edx, edx
div ecx
sub eax, 0x785473b0
imul eax, eax, 0x9035b15a
or eax, 0x2dceb92c
sub eax, 0xeaa2111d
or eax, 0x3471a07
and eax, 0x613e7228
and eax, 0xcf127c82
sub eax, 0x99c80481
add eax, 0x3c0dcc45
add eax, 0xf09a5452
imul eax, eax, 0x57552f6d
xor eax, 0x292f7aaa
or eax, 0x3a43b482
xor eax, 0xdf82e78f
xor eax, 0x9d5395be
add eax, 0x439656ea
or eax, 0x7164dadf
and eax, 0xbbd7abf
add eax, 0x60a7ae5d
imul eax, eax, 0x7d56d972
cmp eax, 0xff22e6bf
ja 0x1005a6f1
mov eax, dword [0x100c3c70]
xor eax, dword [0x100c3c74]
imul eax, eax, 0xd31b5dda
and eax, 0x655433bf
sub eax, 0xa4a88fa6
and eax, 0xdecf835a
imul eax, eax, 0x9e3217dc
add eax, 0xc781487f
sub eax, 0xe2711d11
and eax, 0xd2b0b8af
and eax, 0xa8ae29a0
sub eax, 0x30954929
or eax, 0x6a0db608
mov ecx, 0xaff82a73
xor edx, edx
div ecx
add eax, 0x5bd90602
or eax, 0x83e7a870
and eax, 0x3d6aefa
imul eax, eax, 0x7c8cf7e5
imul eax, eax, 0x554dc368
add eax, 0xf0ab09b1
mov ecx, 0x41afb761
xor edx, edx
div ecx
sub eax, 0xec1f81df
and eax, 0x32c97fa0
add eax, 0x71a1ab7f
imul eax, eax, 0xe6ca2ff8
or eax, 0x4cdd38bd
and eax, 0x2e0d7c3d
mov ecx, 0x260cd07f
xor edx, edx
div ecx
or eax, 0xb2122960
and eax, 0x99184006
add eax, 0x7b9598c2
xor eax, 0x632cdf61
mov ecx, 0xde9e7545
xor edx, edx
div ecx
add eax, 0xbc9477c6
add eax, 0xb9241cdf
mov ecx, 0xb97daea3
xor edx, edx
div ecx
imul eax, eax, 0x8410e66f
imul eax, eax, 0x38ead09c
and eax, 0xdbc4c755
xor eax, 0x2ce119b9
add eax, 0x37a0b29b
xor eax, 0x8117ce9e
imul eax, eax, 0xc845d1e1
mov ecx, 0xbabc5f1b
xor edx, edx
div ecx
xor eax, 0xfbca0147
or eax, 0x36111156
or eax, 0x358b7b23
mov ecx, 0x8563bec
xor edx, edx
div ecx
and eax, 0xc606b175
sub eax, 0x7bdc01bd
imul eax, eax, 0x2c5f4a12
or eax, 0x8485cf8a
imul eax, eax, 0x299a03b2
add eax, 0xda173257
imul eax, eax, 0xecf986f2
xor eax, 0xa2838a67
add eax, 0x5871fda
mov ecx, 0x7bdb556
xor edx, edx
div ecx
sub eax, 0x9874608c
and eax, 0xec91703
or eax, 0x997d03e
mov ecx, 0xab8be76e
xor edx, edx
div ecx
imul eax, eax, 0x1456991f
mov ecx, 0xab6ab0a9
xor edx, edx
div ecx
xor eax, 0x7a109009
or eax, 0xa4f6f90e
or eax, 0x27ae5f7d
or eax, 0x75c394f5
imul eax, eax, 0x7b8d8a42
add eax, 0xcc5c2006
imul eax, eax, 0xeca646f1
mov ecx, 0xe9c727a2
xor edx, edx
div ecx
xor eax, 0x2c01c11
sub eax, 0xc765336b
cmp dword [0x100c4ea8], 0
sete cl
mov byte [esi + 0x8f], cl
cmp eax, 0x44d82700
jae 0x10059b47
mov al, byte [esi + 0x8f]
test al, 1
jne 0x10059d22
jmp 0x1005a2bf
mov eax, dword [0x100c3c78]
sub eax, dword [0x100c3c7c]
or eax, 0xbdf12286
and eax, 0xb12eb19f
add eax, 0x85f11c3
add eax, 0x70c3e08d
imul eax, eax, 0x5fcc6c0e
or eax, 0x79a5ead9
imul eax, eax, 0x52e8f9af
imul eax, eax, 0xe471eb3a
and eax, 0x7c72122a
add eax, 0x630412e4
sub eax, 0xeaa3d8b
imul eax, eax, 0x21d555d8
and eax, 0x261ea332
or eax, 0x2eb5c3ad
add eax, 0xb5587a78
and eax, 0x57f0a028
mov ecx, 0x81906823
xor edx, edx
div ecx
or eax, 0x119e0036
sub eax, 0x9dec4274
xor eax, 0xb6d297e5
mov ecx, 0x859d31b0
xor edx, edx
div ecx
imul eax, eax, 0x2defd0a
xor eax, 0xf76395de
add eax, 0x878b50ac
imul eax, eax, 0x263cb86
or eax, 0x6dc6f45b
or eax, 0xfef55c5a
add eax, 0x4ea8e7a2
xor eax, 0x601f4ee2
xor eax, 0x35fd3101
imul eax, eax, 0xed8c96f6
imul eax, eax, 0x63bb11cd
imul eax, eax, 0xd852b7c6
mov ecx, 0x61255558
xor edx, edx
div ecx
sub eax, 0x6f5ffd4d
mov ecx, 0x6966743
xor edx, edx
div ecx
sub eax, 0x6baa3624
sub eax, 0x913073b5
or eax, 0x325cae3b
mov ecx, 0xa944417b
xor edx, edx
div ecx
add eax, 0xc8979762
and eax, 0x1b6fe285
and eax, 0xd12fda5a
or eax, 0x418721b2
xor eax, 0x23bf1dd3
mov ecx, 0x7e828b25
xor edx, edx
div ecx
add eax, 0xa2938de4
and eax, 0xea61183a
imul eax, eax, 0x433e0964
sub eax, 0xaabe440f
add eax, 0xe9a9cee5
add eax, 0x41ab1aaa
xor eax, 0x1d12ca74
and eax, 0x8b545d19
add eax, 0x3ace3525
xor eax, 0xcc166b33
xor eax, 0x5230dc9f
xor eax, 0xea51aa5a
add eax, 0x55604554
and eax, 0xf46ec3e2
xor eax, 0x65f0f86
xor eax, 0x46093f2c
add eax, 0x37f22510
add eax, 0xf52273b7
sub eax, 0xc9884e1d
add eax, 0xb06fe92a
or eax, 0xe4c0bb10
xor eax, 0x80e5bf0
imul eax, eax, 0x29a19e24
imul eax, eax, 0xfba46fb9
add eax, 0x27dc1ead
xor eax, 0xbce1ea1a
cmp eax, 0x3888b658
jb 0x1005a6fb
mov eax, dword [0x100c3c80]
imul eax, dword [0x100c3c84]
add eax, 0x1effa9f6
imul eax, eax, 0x1898c7d6
xor eax, 0x5385eba5
imul eax, eax, 0x9d43f464
sub eax, 0x489fe537
xor eax, 0x34e0fe3a
add eax, 0x679c740a
and eax, 0x92f6d3d
imul eax, eax, 0xa7874e8b
or eax, 0x709c10c6
imul eax, eax, 0xb59370a8
imul eax, eax, 0xc210a051
and eax, 0xc539cd7f
xor eax, 0x66fbacf6
xor eax, 0x622b0677
or eax, 0xa87cdb8c
or eax, 0x637047b2
and eax, 0x109b9be9
or eax, 0x8a675a5e
xor eax, 0x4aab0899
add eax, 0x13f3e7c1
or eax, 0xdbd64dee
or eax, 0xe460a237
imul eax, eax, 0x96cf19bf
add eax, 0xfa1a745a
imul eax, eax, 0xa0cd9dd8
add eax, 0x9d5e3f31
sub eax, 0xf05a9940
add eax, 0xd24e5aec
and eax, 0x7f8d2461
add eax, 0x1cc68875
and eax, 0x63dbc3cb
imul eax, eax, 0x22f04a86
sub eax, 0x731f5bee
xor eax, 0xc1e7ee9a
add eax, 0x76d807c3
mov ecx, 0x954607cb
xor edx, edx
div ecx
imul eax, eax, 0x3a03093d
add eax, 0x913f8a81
xor eax, 0x386803d5
sub eax, 0x188bc945
and eax, 0xe07066ca
mov ecx, 0x1b2ed7fc
xor edx, edx
div ecx
and eax, 0x7a6c1c37
add eax, 0x2994ffc4
imul eax, eax, 0x87f06359
mov ecx, 0x9fb4a665
xor edx, edx
div ecx
mov ecx, 0xf08ba608
xor edx, edx
div ecx
xor eax, 0x10bdba32
xor eax, 0x568b9fb5
mov ecx, 0x1c84e1d
xor edx, edx
div ecx
mov ecx, 0x1b9b74f8
xor edx, edx
div ecx
or eax, 0xffe92c94
imul eax, eax, 0x8bc18001
and eax, 0x5500a388
add eax, 0xc70ae57b
add eax, 0x802d8b87
imul eax, eax, 0x804d1989
or eax, 0xadecf7a8
mov ecx, 0x7ddeb8ce
xor edx, edx
div ecx
or eax, 0xec787de0
and eax, 0xacb6fbfb
mov ecx, 0x5333eac8
xor edx, edx
div ecx
xor eax, 0x9177f754
xor eax, 0xaced44dd
and eax, 0x76eba1d4
imul eax, eax, 0x356446fc
or eax, 0xa95a931c
and eax, 0x4ed7391
imul eax, eax, 0x3d24aa05
add eax, 0xa99271dd
sub eax, 0x51eccbd0
mov cl, byte [0x100c240d]
xor cl, 0x51
mov byte [0x100c2411], cl
mov cl, byte [0x100c240e]
xor cl, 0x9c
mov byte [0x100c2412], cl
mov cl, byte [0x100c240f]
xor cl, 0xba
mov byte [0x100c2413], cl
mov cl, byte [0x100c2410]
xor cl, 0x6e
mov byte [0x100c2414], cl
mov cl, byte [0x100c23f7]
xor cl, 0x9a
mov byte [0x100c2401], cl
mov cl, byte [0x100c23f8]
xor cl, 0xd3
mov byte [0x100c2402], cl
mov cl, byte [0x100c23f9]
xor cl, 0x4d
mov byte [0x100c2404], cl
mov cl, byte [0x100c23fa]
xor cl, 9
mov byte [0x100c2406], cl
mov cl, byte [0x100c23fb]
xor cl, 0x60
mov byte [0x100c2407], cl
mov cl, byte [0x100c23fc]
xor cl, 0xf3
mov byte [0x100c2408], cl
mov cl, byte [0x100c23fd]
xor cl, 0xd3
mov byte [0x100c2409], cl
mov cl, byte [0x100c23fe]
xor cl, 0x90
mov byte [0x100c240a], cl
mov cl, byte [0x100c23ff]
xor cl, 0xa
mov byte [0x100c240b], cl
mov cl, byte [0x100c2400]
xor cl, 0x63
mov byte [0x100c240c], cl
mov cl, byte [0x100c2415]
xor cl, 0xeb
mov byte [0x100c2418], cl
mov cl, byte [0x100c2416]
xor cl, 0x6a
mov byte [0x100c2419], cl
mov cl, byte [str.Z_f]
xor cl, 0x5a
mov byte [0x100c241b], cl
mov cl, byte [0x100c23c0]
xor cl, 0xf2
mov byte [0x100c23e0], cl
mov cl, byte [0x100c23c1]
xor cl, 0x84
mov byte [0x100c23e1], cl
mov cl, byte [0x100c23c2]
xor cl, 0x67
mov byte [0x100c23e2], cl
mov cl, byte [0x100c23c3]
xor cl, 0x97
mov byte [0x100c23e4], cl
mov cl, byte [0x100c23c4]
xor cl, 0xef
mov byte [str.5_A_], cl
mov cl, byte [0x100c23c5]
xor cl, 0xba
mov byte [0x100c23e6], cl
mov cl, byte [0x100c23c6]
xor cl, 0xc3
mov byte [0x100c23e7], cl
mov cl, byte [0x100c23c7]
xor cl, 0x8e
mov byte [0x100c23e8], cl
mov cl, byte [0x100c23c8]
xor cl, 0x75
mov byte [0x100c23e9], cl
mov cl, byte [0x100c23c9]
xor cl, 0x2f
mov byte [0x100c23ea], cl
mov cl, byte [0x100c23ca]
xor cl, 0x4f
mov byte [0x100c23eb], cl
mov cl, byte [0x100c23cb]
xor cl, 0xec
mov byte [0x100c23ec], cl
mov cl, byte [0x100c23cc]
xor cl, 0x5d
mov byte [0x100c23ed], cl
mov cl, byte [0x100c23cd]
xor cl, 0x78
mov byte [0x100c23ee], cl
mov cl, byte [0x100c23ce]
xor cl, 0xcf
mov byte [0x100c23ef], cl
mov cl, byte [0x100c23cf]
xor cl, 0x23
mov byte [0x100c23f0], cl
mov cl, byte [0x100c23d0]
xor cl, 0xbc
mov byte [0x100c23f1], cl
mov cl, byte [0x100c23d1]
xor cl, 0xd0
mov byte [0x100c23f2], cl
mov cl, byte [0x100c23d2]
xor cl, 0xa1
mov byte [0x100c23f3], cl
mov cl, byte [0x100c23d3]
xor cl, 0x3e
mov byte [0x100c23f4], cl
mov cl, byte [0x100c23d4]
xor cl, 0xba
mov byte [0x100c23f5], cl
mov cl, byte [0x100c23d5]
xor cl, 0x47
mov byte [0x100c23f6], cl
cmp eax, 0x576ff62
je 0x10059ec4
jmp 0x1005a2bf
mov eax, dword [0x100c3c88]
and eax, dword [0x100c3c8c]
and eax, 0xb9ceb9d5
mov ecx, 0xc1d5b5f7
xor edx, edx
div ecx
or eax, 0x10631fb8
imul eax, eax, 0xd52df1ad
sub eax, 0x810d1548
sub eax, 0x8951fc67
mov ecx, 0x4bc26a5f
xor edx, edx
div ecx
or eax, 0x781730e
mov ecx, 0xdc143e0c
xor edx, edx
div ecx
add eax, 0xb7cc09ce
mov ecx, 0xff1530e
xor edx, edx
div ecx
imul eax, eax, 0xa09a830b
imul eax, eax, 0xaf33e6ca
and eax, 0x3a2562c2
add eax, 0xd53d4f84
and eax, 0xd6d6b142
or eax, 0x97fa6988
add eax, 0x8d6aa315
xor eax, 0x49be23fc
add eax, 0x13cf0e5d
and eax, 0x7bcc5491
sub eax, 0x6b2aa0f8
xor eax, 0xcde30548
mov ecx, 0xca0b083c
xor edx, edx
div ecx
mov ecx, 0x608df165
xor edx, edx
div ecx
mov ecx, 0xe48dafcd
xor edx, edx
div ecx
imul eax, eax, 0x1b314f15
sub eax, 0xbce5e02b
add eax, 0x71e59941
xor eax, 0x3f537ea6
add eax, 0xe61a15cc
xor eax, 0xd1aa52dc
mov ecx, 0xc3b3deda
xor edx, edx
div ecx
sub eax, 0x3eae69c
add eax, 0x6f63d793
add eax, 0x649fb0c5
mov ecx, 0x239c3526
xor edx, edx
div ecx
imul eax, eax, 0x727d67eb
xor eax, 0x8d745393
and eax, 0x45fcfebd
or eax, 0x9cecde5c
mov ecx, 0xe633c29
xor edx, edx
div ecx
xor eax, 0x6d9ced89
and eax, 0x74df13a7
or eax, 0x3c792532
xor eax, 0x3b66791c
add eax, 0x5361031c
sub eax, 0x7aef7452
xor eax, 0x63e50477
or eax, 0xdc5e791d
or eax, 0xb54464df
imul eax, eax, 0x79029258
xor eax, 0x17bbf680
or eax, 0xcd66c9a2
or eax, 0x4b6d7655
and eax, 0x127d4a58
or eax, 0x81ad0b39
imul eax, eax, 0xfb199a4b
or eax, 0x10280a80
xor eax, 0xf61310b6
xor eax, 0x31f27fe0
and eax, 0x4ebcb2e5
xor eax, 0xac21114a
sub eax, 0xb94310bc
xor eax, 0xbf77f053
and eax, 0xd1d583eb
or eax, 0x39603086
sub eax, 0xa32d961c
sub eax, 0x388213d0
add eax, 0x4dca9e36
or eax, 0x75f8891e
sub eax, 0x775dfa8b
cmp eax, 0xa0b1b8a3
je 0x1005a8d4
mov eax, 0x706f465
mov dword [esi + 0x88], eax
mov dword [0x100c4ea8], 1
push eax
mov eax, esp
mov ecx, eax
mov dword [esi + 0x70], ecx
push eax
mov ecx, esp
sub esp, 0xc
mov edx, esp
mov dword [esi + 0x4c], edx
sub esp, 8
mov edx, esp
and edx, 0xfffffff8
mov dword [esi + 0x44], edx
mov esp, edx
push eax
push eax
mov edx, esp
and edx, 0xfffffff8
mov dword [esi + 0x58], edx
mov esp, edx
push eax
mov ebx, esp
mov dword [esi + 0x50], ebx
sub esp, 0x18
mov edx, esp
mov dword [esi + 0x54], edx
mov dword [esi + 0x5c], edx
push eax
mov edx, esp
mov dword [esi + 0x7c], edx
push eax
mov edx, esp
mov dword [esi + 0x60], edx
push eax
mov edx, esp
mov dword [esi + 0x78], edx
push eax
mov edx, esp
mov dword [esi + 0x64], edx
push eax
mov edi, esp
push eax
mov edx, esp
mov dword [esi + 0x68], edx
push eax
mov edx, esp
mov dword [esi + 0x74], edx
push eax
mov edx, esp
mov dword [esi + 0x6c], edx
push eax
mov edx, esp
mov dword [esi + 0x84], edx
mov edx, dword [esi + 0x90]
mov dword [eax], edx
mov edx, dword [esi + 0x94]
mov eax, dword [esi + 0x4c]
mov dword [ecx], edx
mov ecx, dword [0x100c2409]
mov dword [eax + 8], ecx
movsd xmm0, qword [0x100c2401]
movsd qword [eax], xmm0
call fcn.1004a3c0
mov ecx, eax
mov eax, dword [esi + 0x44]
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.10058330
mov ecx, eax
mov eax, dword [esi + 0x44]
mov dword [esi + 0x48], ecx
mov ecx, dword [esi + 0x58]
mov dword [ecx + 4], edx
mov edx, dword [esi + 0x48]
mov dword [ecx], edx
mov edx, dword [eax]
mov ecx, dword [eax + 4]
sub esp, 0xc
mov eax, esp
mov dword [eax + 8], ecx
mov ecx, dword [esi + 0x4c]
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.10040280
mov edx, dword [esi + 0x50]
mov ecx, dword [esi + 0x54]
add esp, 0xc
mov dword [edx], eax
mov eax, dword [esi + 0x58]
movsd xmm0, qword [0x100c23ef]
movsd qword [ecx + 0xf], xmm0
movaps xmm0, xmmword [0x100c23e0]
movups xmmword [ecx], xmm0
mov edx, dword [eax]
mov ecx, dword [eax + 4]
sub esp, 0xc
mov eax, esp
mov dword [eax + 8], ecx
mov ecx, dword [esi + 0x5c]
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.10040280
mov ecx, dword [esi + 0x7c]
add esp, 0xc
mov edx, eax
mov eax, dword [esi + 0x60]
mov dword [ecx], edx
mov ecx, dword [0x100c2418]
mov dword [eax], ecx
sub esp, 8
mov dword [esp], eax
mov dword [esp + 4], 3
call fcn.10019d60
mov edx, dword [esi + 0x64]
mov eax, dword [esi + 0x7c]
add esp, 8
mov ecx, dword [ebx]
mov dword [edx], ecx
mov dword [edi], 5
mov eax, dword [eax]
mov ecx, 0xffffffff
sub esp, 0x14
mov dword [esp], ecx
mov ecx, dword [esi + 0x78]
mov dword [esp + 4], edx
mov dword [esp + 8], edi
mov dword [esp + 0xc], 0x40
mov dword [esp + 0x10], ecx
call eax
mov ecx, eax
mov eax, dword [esi + 0x68]
mov dword [eax], ecx
mov eax, dword [ebx]
lea ecx, [0x100c4cc8]
sub esp, 0xc
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 5
call fcn.1003fe60
mov ecx, dword [esi + 0x74]
add esp, 0xc
mov eax, dword [esi + 0x6c]
mov byte [ecx], 0xe9
mov ecx, dword [0x100c2411]
mov dword [eax], ecx
sub esp, 8
mov dword [esp], eax
mov dword [esp + 4], 3
call fcn.1001af90
mov eax, dword [esi + 0x70]
add esp, 8
mov ecx, dword [ebx]
add ecx, 1
sub esp, 0xc
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 4
call fcn.1003fe60
add esp, 0xc
mov eax, dword [esi + 0x74]
mov ecx, dword [ebx]
sub esp, 0xc
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 1
call fcn.1003fe60
mov ecx, dword [esi + 0x78]
add esp, 0xc
mov eax, dword [esi + 0x7c]
mov eax, dword [eax]
mov dword [esi + 0x80], eax
mov edx, dword [ecx]
mov eax, 0xffffffff
sub esp, 0x14
mov dword [esp], eax
mov eax, dword [esi + 0x80]
mov dword [esp + 4], ebx
mov dword [esp + 8], edi
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ecx
call eax
mov ecx, dword [esi + 0x84]
mov edx, eax
mov eax, dword [esi + 0x88]
mov dword [ecx], edx
cmp eax, 0x661534db
ja 0x1005a8d4
mov ecx, dword [esi + 0x98]
xor ecx, ebp
call fcn.1006bd1f
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, dword [0x100c4ea8]
jmp 0x10059b47
mov al, byte [0x100c240d]
xor al, 0x51
mov byte [0x100c2411], al
mov al, byte [0x100c240e]
xor al, 0x9c
mov byte [0x100c2412], al
mov al, byte [0x100c240f]
xor al, 0xba
mov byte [0x100c2413], al
mov al, byte [0x100c2410]
xor al, 0x6e
mov byte [0x100c2414], al
mov al, byte [0x100c23f7]
xor al, 0x9a
mov byte [0x100c2401], al
mov al, byte [0x100c23f8]
xor al, 0xd3
mov byte [0x100c2402], al
mov al, byte [0x100c23f9]
xor al, 0x4d
mov byte [0x100c2404], al
mov al, byte [0x100c23fa]
xor al, 9
mov byte [0x100c2406], al
mov al, byte [0x100c23fb]
xor al, 0x60
mov byte [0x100c2407], al
mov al, byte [0x100c23fc]
xor al, 0xf3
mov byte [0x100c2408], al
mov al, byte [0x100c23fd]
xor al, 0xd3
mov byte [0x100c2409], al
mov al, byte [0x100c23fe]
xor al, 0x90
mov byte [0x100c240a], al
mov al, byte [0x100c23ff]
xor al, 0xa
mov byte [0x100c240b], al
mov al, byte [0x100c2400]
xor al, 0x63
mov byte [0x100c240c], al
mov al, byte [0x100c2415]
xor al, 0xeb
mov byte [0x100c2418], al
mov al, byte [0x100c2416]
xor al, 0x6a
mov byte [0x100c2419], al
mov al, byte [str.Z_f]
xor al, 0x5a
mov byte [0x100c241b], al
mov al, byte [0x100c23c0]
xor al, 0xf2
mov byte [0x100c23e0], al
mov al, byte [0x100c23c1]
xor al, 0x84
mov byte [0x100c23e1], al
mov al, byte [0x100c23c2]
xor al, 0x67
mov byte [0x100c23e2], al
mov al, byte [0x100c23c3]
xor al, 0x97
mov byte [0x100c23e4], al
mov al, byte [0x100c23c4]
xor al, 0xef
mov byte [str.5_A_], al
mov al, byte [0x100c23c5]
xor al, 0xba
mov byte [0x100c23e6], al
mov al, byte [0x100c23c6]
xor al, 0xc3
mov byte [0x100c23e7], al
mov al, byte [0x100c23c7]
xor al, 0x8e
mov byte [0x100c23e8], al
mov al, byte [0x100c23c8]
xor al, 0x75
mov byte [0x100c23e9], al
mov al, byte [0x100c23c9]
xor al, 0x2f
mov byte [0x100c23ea], al
mov al, byte [0x100c23ca]
xor al, 0x4f
mov byte [0x100c23eb], al
mov al, byte [0x100c23cb]
xor al, 0xec
mov byte [0x100c23ec], al
mov al, byte [0x100c23cc]
xor al, 0x5d
mov byte [0x100c23ed], al
mov al, byte [0x100c23cd]
xor al, 0x78
mov byte [0x100c23ee], al
mov al, byte [0x100c23ce]
xor al, 0xcf
mov byte [0x100c23ef], al
mov al, byte [0x100c23cf]
xor al, 0x23
mov byte [0x100c23f0], al
mov al, byte [0x100c23d0]
xor al, 0xbc
mov byte [0x100c23f1], al
mov al, byte [0x100c23d1]
xor al, 0xd0
mov byte [0x100c23f2], al
mov al, byte [0x100c23d2]
xor al, 0xa1
mov byte [0x100c23f3], al
mov al, byte [0x100c23d3]
xor al, 0x3e
mov byte [0x100c23f4], al
mov al, byte [0x100c23d4]
xor al, 0xba
mov byte [0x100c23f5], al
mov al, byte [0x100c23d5]
xor al, 0x47
mov byte [0x100c23f6], al
jmp 0x10059ec4
mov dword [0x100c4ea8], 1
push eax
mov eax, esp
mov ecx, eax
mov dword [esi + 0x2c], ecx
push eax
mov ecx, esp
sub esp, 0xc
mov edx, esp
mov dword [esi + 8], edx
sub esp, 8
mov edx, esp
and edx, 0xfffffff8
mov dword [esi], edx
mov esp, edx
push eax
push eax
mov edx, esp
and edx, 0xfffffff8
mov dword [esi + 0x14], edx
mov esp, edx
push eax
mov ebx, esp
mov dword [esi + 0xc], ebx
sub esp, 0x18
mov edx, esp
mov dword [esi + 0x10], edx
mov dword [esi + 0x18], edx
push eax
mov edx, esp
mov dword [esi + 0x38], edx
push eax
mov edx, esp
mov dword [esi + 0x1c], edx
push eax
mov edx, esp
mov dword [esi + 0x34], edx
push eax
mov edx, esp
mov dword [esi + 0x20], edx
push eax
mov edi, esp
push eax
mov edx, esp
mov dword [esi + 0x24], edx
push eax
mov edx, esp
mov dword [esi + 0x30], edx
push eax
mov edx, esp
mov dword [esi + 0x28], edx
push eax
mov edx, esp
mov dword [esi + 0x40], edx
mov edx, dword [esi + 0x90]
mov dword [eax], edx
mov edx, dword [esi + 0x94]
mov eax, dword [esi + 8]
mov dword [ecx], edx
mov ecx, dword [0x100c2409]
mov dword [eax + 8], ecx
movsd xmm0, qword [0x100c2401]
movsd qword [eax], xmm0
call fcn.1004a3c0
mov ecx, eax
mov eax, dword [esi]
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.10058330
mov ecx, eax
mov eax, dword [esi]
mov dword [esi + 4], ecx
mov ecx, dword [esi + 0x14]
mov dword [ecx + 4], edx
mov edx, dword [esi + 4]
mov dword [ecx], edx
mov edx, dword [eax]
mov ecx, dword [eax + 4]
sub esp, 0xc
mov eax, esp
mov dword [eax + 8], ecx
mov ecx, dword [esi + 8]
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.10040280
mov edx, dword [esi + 0xc]
mov ecx, dword [esi + 0x10]
add esp, 0xc
mov dword [edx], eax
mov eax, dword [esi + 0x14]
movsd xmm0, qword [0x100c23ef]
movsd qword [ecx + 0xf], xmm0
movaps xmm0, xmmword [0x100c23e0]
movups xmmword [ecx], xmm0
mov edx, dword [eax]
mov ecx, dword [eax + 4]
sub esp, 0xc
mov eax, esp
mov dword [eax + 8], ecx
mov ecx, dword [esi + 0x18]
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.10040280
mov ecx, dword [esi + 0x38]
add esp, 0xc
mov edx, eax
mov eax, dword [esi + 0x1c]
mov dword [ecx], edx
mov ecx, dword [0x100c2418]
mov dword [eax], ecx
sub esp, 8
mov dword [esp], eax
mov dword [esp + 4], 3
call fcn.10019d60
mov edx, dword [esi + 0x20]
mov eax, dword [esi + 0x38]
add esp, 8
mov ecx, dword [ebx]
mov dword [edx], ecx
mov dword [edi], 5
mov eax, dword [eax]
mov ecx, 0xffffffff
sub esp, 0x14
mov dword [esp], ecx
mov ecx, dword [esi + 0x34]
mov dword [esp + 4], edx
mov dword [esp + 8], edi
mov dword [esp + 0xc], 0x40
mov dword [esp + 0x10], ecx
call eax
mov ecx, eax
mov eax, dword [esi + 0x24]
mov dword [eax], ecx
mov eax, dword [ebx]
lea ecx, [0x100c4cc8]
sub esp, 0xc
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 5
call fcn.1003fe60
mov ecx, dword [esi + 0x30]
add esp, 0xc
mov eax, dword [esi + 0x28]
mov byte [ecx], 0xe9
mov ecx, dword [0x100c2411]
mov dword [eax], ecx
sub esp, 8
mov dword [esp], eax
mov dword [esp + 4], 3
call fcn.1001af90
mov eax, dword [esi + 0x2c]
add esp, 8
mov ecx, dword [ebx]
add ecx, 1
sub esp, 0xc
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 4
call fcn.1003fe60
add esp, 0xc
mov eax, dword [esi + 0x30]
mov ecx, dword [ebx]
sub esp, 0xc
mov dword [esp], ecx
mov dword [esp + 4], eax
mov dword [esp + 8], 1
call fcn.1003fe60
mov ecx, dword [esi + 0x34]
add esp, 0xc
mov eax, dword [esi + 0x38]
mov eax, dword [eax]
mov dword [esi + 0x3c], eax
mov edx, dword [ecx]
mov eax, 0xffffffff
sub esp, 0x14
mov dword [esp], eax
mov eax, dword [esi + 0x3c]
mov dword [esp + 4], ebx
mov dword [esp + 8], edi
mov dword [esp + 0xc], edx
mov dword [esp + 0x10], ecx
call eax
mov ecx, eax
mov eax, dword [esi + 0x40]
mov dword [eax], ecx
jmp 0x1005a46c